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].P‌​AYLHDR.SUBJID

Не видя полной структуры всех объектов, трудно сказать, какую часть, если это вызывает проблему, но на догадках, я собираюсь сказать: gsrlObject является экземпляром класса GSRL, и в этом случае вынуть этот и это может сработать. Попробуйте добавить каждую часть исходного пути по одному фрагменту за раз, чтобы увидеть, какая часть сопоставления вызывает проблему.

Другие вопросы по тегам