我有两个 java 组件。第一个是分析 MyTree 对象并使用 JXPathContext 生成要删除的任务。然后任务被发送到第二个。第二个组件是执行任务。在执行期间,我收到以下错误:
org.apache.commons.jxpath.JXPathException: Exception trying to remove all for xpath /*[action='REMOVE']
; Cannot modify property: my.test.MyTree.bbb; No write method
at org.apache.commons.jxpath.ri.JXPathContextReferenceImpl.removeAll(JXPathContextReferenceImpl.java:572)
at org.apache.commons.jxpath.ri.JXPathCompiledExpression.removeAll(JXPathCompiledExpression.java:128)
...
类的结构更不像这样:
class MyTree {
public final List<Aaa> aaa = new ArrayList();
public final List<Bbb> bbb = new ArrayList();
public final List<Ccc> ccc = new ArrayList();
}
class Task {
public String action;
}
class Aaa extends Task{
}
class Bbb extends Task{
}
class Ccc extends Task{
}
你知道我为什么会收到这个错误吗?