Быстрый вопрос: я использую 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
Кто-нибудь знает, если это:
- даже можно ссылаться на поле таким образом?
- a возможно решение, что я делаю неправильно здесь?
Для заполнения: на обоих объектах есть объекты-получатели и сеттеры, определенные в объекте Name, однако я не писал геттеры и сеттеры по самому классу A.