public class ParentOne {
private List<ChildOne> child;
public List<ChildOne> getChild() {
if (child == null) {
child = new ArrayList<ChildOne>();
}
return child;
}
}
public class ParentTwo {
private List<ChildTwo> child;
public List<ChildTwo> getChild() {
if (child == null) {
child = new ArrayList<ChildTwo>();
}
return child;
}
}
Отображение DOZER
<mapping>
<class-a>ParentOne</class-a>
<class-b>ParentTwo</class-b>
<field>
<a is-accessible="true">child</a>
<b is-accessible="true">child</b>
</field>
</mapping>
public class Client {
public static void main(String[] args) {
ParentOne parentOne = new ParentOne();
parentOne.getChild().add(new ChildOne());
parentOne.getChild().add(new ChildOne());
ParentTwo parentTwo = dozerBeanMapper.map(parentOne, ParentTwo.class);
}
}
Родительский класс не содержит установщиков для списка. поэтому я сделал отображение бульдозера таким образом, чтобы получить прямой доступ к полям.
Сопоставление происходит нормально, но проблема в том, что после сопоставления экземпляр parentTwo содержит дочерний элемент типа ChildOne, он должен быть ChildTwo.
Я что-то пропустил?