Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 对象中包含的Dozer映射ArrayList_Java_Arraylist_Dozer - Fatal编程技术网

Java 对象中包含的Dozer映射ArrayList

Java 对象中包含的Dozer映射ArrayList,java,arraylist,dozer,Java,Arraylist,Dozer,我有一个包含arrayList的对象A,我想将它映射到一个与A具有相同结构的对象B。 映射后,对象B的arrayList为空。 我尝试了这个映射 <mapping type="bi-directional"> <class-a>it.firstpackage.A</class-a> <class-b>it.secondpackage.B</class-b> <field copy-by-reference=

我有一个包含arrayList的对象A,我想将它映射到一个与A具有相同结构的对象B。
映射后,对象B的arrayList为空。 我尝试了这个映射

<mapping type="bi-directional">
    <class-a>it.firstpackage.A</class-a>
    <class-b>it.secondpackage.B</class-b>
    <field copy-by-reference="true">
        <a>collection</a>
        <b>collection</b>
        <a-hint>it.firstpackage.ListA</a-hint>
        <b-hint>it.secondpackage.ListB</b-hint>
    </field>
</mapping>

它是第一个包裹
它是第二个包裹
收集
收集
it.firstpackage.ListA
it.secondpackage.ListB
你能告诉我哪里错了吗?

提前感谢并为我的英语道歉

您正在尝试通过引用映射集合,这告诉dozer不要映射子元素,而是按原样复制值。 但这样它就无法复制属性,因为它们属于不同的类型。
尝试通过引用删除副本,并在需要时添加lista和listb之间的映射。

如果您打算这样做:it.firstpackage.A it.secondpackage.B it.firstpackage.lista it.secondpackage.listb我遇到同样的问题:lista中为null我不知道lista和listb的结构,但我认为您可能需要映射内部使用字段元素在lista和listb上表示。假设A和B中包含的字段“collection”是包含Object(List)类型对象的两个列表,您能给我一个如何映射对象A和B的实际示例吗?谢谢package.POBLACIONESA package.POBLACIONESB POBLACIONESB POBLACIONS POBLACIONS他们是否列出了它。firstpackage.A.collection和it.firstpackage.B.collection存储相同类型的对象?