【发布时间】:2018-04-16 16:46:58
【问题描述】:
我有两个单独的对象要映射:
Class A {
List<AA> listAA;
// get set methods...
}
Class B{
C objectC = new C();
// get set methods...
}
Class C{
List<CC> listCC;
// get set methods...
}
Class AA{
String aa;
// get set methods...
}
Class CC{
String cc;
// get set methods...
}
所以我想将 listAA 映射到 C 内部的 listCC。C 有 B 作为父母。
我尝试将其描述为数据结构:
a.listAA -> b.c.listCC
到目前为止我已经尝试过:
<mappings>
<mapping>
<class-a>mypackages.A</class-a>
<class-b>mypackages.B</class-b>
<field>
<a>listAA</a>
<b>objectC.listCC</b>
<b-hint>mypackages.CC</b-hint>
<field>
</mapping>
<mapping>
<class-a>mypackages.AA</class-a>
<class-b>mypackages.CC</class-b>
<field>
<a>aa</a>
<b>cc</b>
<field>
</mapping>
</mappings>
我想是推土机不知道
objectC.listCC
作为带有 in 对象的列表。而是尝试查找名为“objectC.listCC”的属性。
它会抛出
NullPointerException
at org.dozer.util.ReflectionsUtils.invoke(ReflectionsUtils)
...
有谁知道如何解决这个问题。
问候
伊万
PS:希望我描述清楚
【问题讨论】:
-
你能发布完整的堆栈跟踪吗?它可能有助于了解代码内部发生的情况。
-
可能是因为您在 XML 中使用
listA和listC而不是listAA和listCC -
@Vasan 是的,你是对的。我在这个问题描述上打错了。但是在我的代码中,你输入了正确的代码