【发布时间】:2015-03-19 00:42:12
【问题描述】:
尝试对嵌套类进行一些 XML 映射时,我收到 java.lang.IllegalArgumentException: Result Maps collection has value for" 错误:
我有以下嵌套类结构:
package com.test;
public class ObjectA {
private List<ObjectB> entries;
public ObjectA(List<ObjectB> entries) {
this.entries = entries;
}
public void setEntries(List<ObjectB> entries) {
this.entries = entries;
}
public List<ObjectB> getEntries() {
return this.entries;
}
public class ObjectB {
private String param1;
public ObjectB(String param1) {
this.param1 = param1;
}
public void setParam1(String param1) {
this.param1 = param1;
}
public String getParam1() {
return this.param1;
}
}
}
xml 映射器看起来像这样:
<resultMap id="ObjectA" type="com.test.ObjectA">
<collection property="entries" resultMap="Entries"/>
</resultMap>
<resultMap id="Entries" type="com.test.ObjectA.ObjectB">
<result property="param1" column="column1"/>
</resultMap>
如果我在 ObjectA 类之外使用 ObjectB 类,则映射工作正常。但问题是我不想那样做。我想让它嵌套。
谢谢
【问题讨论】:
-
我认为您可以为错误添加完整的堆栈跟踪。