java - 从 List 中检索项目会导致 com.sun.jdi.InvocationException 错误
问题描述
我正在使用Oracle Test Manager API编写一个类来从系统中检索一些信息。我正在使用的对象有一个 getTestCases() 方法,它返回一个对象列表。返回的列表大小为 1。但是,如果我尝试调用列表中的任何方法,例如 get(),甚至打印它,我会得到 NullPointerException。
AssociationList<TestCase> tc = r.getTestCases();
//this prints 1
System.out.println("tc size " + tc.size());
//this throws a NullPointerException
System.out.println("tc item " + tc);
最后一个打印语句不应该至少打印出哈希码吗?什么会导致 NullPointer?我在那条线上做了一个断点。检查该对象会发现“com.sun.jdi.InvocationException 发生调用方法”。
如果列表包含一个项目,为什么列表会这样?这可能是 API 的 Oracle 实现的问题吗?
调试器截图
解决方案
我想到了。您必须为 TestCase 初始化资产路径才能从 Requirement 中检索 TestCases
我添加了以下内容并且它有效
TestCase tcRoot = (TestCase) otm.resolve("Test Cases/");
推荐阅读
- c - C中的拆分字符串函数
- delphi - FMX TPaintBox Canvas.FillText 在 Windows 10 上无法正常工作
- php - 我可以使用类似于使用 php 的 ldapjs 创建匿名绑定吗?
- python - Serach 在数据框列 pandas 中列出名称
- python - PySpark groupby 多个时间窗口
- loops - 是否可以用新值更新 ansible 中的字典?
- javascript - 无法将用户输入添加到 api
- docker - Hyperledger Fabric 网络中的链码问题
- php - 如何将文件从表单输入发送到服务器
- r - loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) 中的错误:没有名为“rstatix”的包