org.dozer.MappingException: не найден метод чтения или записи для поля
У меня есть один исходный класс pojo, внутри которого он ссылается на другой класс pojo, и он находится в цепочке, и я получаю вышеуказанную ошибку.
мой код
List myMappingFiles = new ArrayList();
myMappingFiles.add("dozerMapping.xml");
// myMappingFiles.add("someOtherDozerBeanMappings.xml");
DozerBeanMapper mapper = new DozerBeanMapper();
mapper.setMappingFiles(myMappingFiles);
mapper.map(gsrlObject,temp, "a");
мой файл dozermapping.xml
<?xml version="1.0" encoding="UTF-8"?>
<mappings xmlns="http://dozer.sourceforge.net"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dozer.sourceforge.net http://dozer.sourceforge.net/schema/beanmapping.xsd">
<mapping map-id="a">
<class-a>com.dnb.dsc.ihx.bom.GSRL</class-a>
<class-b>com.ihx.model.Subj</class-b>
<field>
<a>gsrlObject.GSRLMSGSRQV1a.SUBJUPDTRNRQList[0].SUBJUPDRQList[0].INVTDATAList[0].PAYLHDR.SUBJID</a>
<b>subjId</b>
</field>
</mapping>
</mappings>
любая помощь в этом
Спасибо
2 ответа
Это означает, что атрибуты dozerMapping.xml не совпадают или атрибут отсутствует в классе сущностей.
Итак, Dozer не может отобразить ваш исходный путь в метод:
gsrlObject.GSRLMSGSRQV1a.SUBJUPDTRNRQList[0].SUBJUPDRQList[0].INVTDATAList[0].PAYLHDR.SUBJID
Не видя полной структуры всех объектов, трудно сказать, какую часть, если это вызывает проблему, но на догадках, я собираюсь сказать: gsrlObject является экземпляром класса GSRL, и в этом случае вынуть этот и это может сработать. Попробуйте добавить каждую часть исходного пути по одному фрагменту за раз, чтобы увидеть, какая часть сопоставления вызывает проблему.