快速提问:我正在使用Dozer在两个不同的类之间进行映射。在我的目标类(本例中的A)中,我有一个字段,它是Name
对象的一个实例。该对象有两个字符串(last-和firstNames)。通过输入字符串列表并使用分隔符将它们连接在一起来构建这些字符串。在我的源类(B)中,我有两个列表(last-和firstNames)。所有列表仅包含字符串。
我的推土机映射如下:
<mapping>
<class-a>A</class-a>
<class-b>B</class-b>
<field>
<a is-accessible="true" >name.lastNames</a>
<b>lastNames</b>
</field>
<field>
<a is-accessible="true">name.firstNames</a>
<b>firstNames</b>
</field>
</mapping>
但是,使用上述配置时,我得到以下异常:
org.dozer.MappingException: No such field found class A.name.lastNames
有谁知道是否:
要完成:在Name对象上为两个列表定义了getter和setter,但是我没有在A类本身上编写getter和setter。
答案 0 :(得分:1)
发现无法将深度映射与is-accessible
属性结合使用。为这个类编写一个自定义映射器就可以了。