Как отладить неудачное сопоставление, когда я получаю только исключение нулевого указателя

1

Я использую Orika в своем проекте, как правило, с большим успехом.
Я добавил новый тип, зарегистрированный как исходный, так и целевой, и когда я сопоставляю его с помощью mapper.mapAsList(sourceList, targetClass), я получаю следующее исключение

[2015-02-11 19:58:19,836][ERROR][platform.fe.baseservice.utils.validators.BasicFEValidator] validateTransformingAPIModelToDataModel
java.lang.NullPointerException: null
    at ma.glasnost.orika.generated.Orika_HTML5Single_APIHTML5Single_Mapper808888457244295$34.mapAtoB(Orika_HTML5Single_APIHTML5_Mapper808888457244295$34.java) ~[na:na]
    at ma.glasnost.orika.impl.mapping.strategy.UseCustomMapperStrategy.map(UseCustomMapperStrategy.java:65) ~[orika-core-1.4.4.jar:na]
    at ma.glasnost.orika.impl.MapperFacadeImpl.mapAsCollection(MapperFacadeImpl.java:646) ~[orika-core-1.4.4.jar:na]
    at ma.glasnost.orika.impl.MapperFacadeImpl.mapAsList(MapperFacadeImpl.java:391) ~[orika-core-1.4.4.jar:na]
    at ma.glasnost.orika.impl.MapperFacadeImpl.mapAsList(MapperFacadeImpl.java:729) ~[orika-core-1.4.4.jar:na]
    ....
    ....

Исключение только null-указателя.

Теперь я пытаюсь отлаживать его в течение длительного времени, но безуспешно (главным образом потому, что большая часть его генерируется кодом).

Вопросов:

  1. Каков наилучший способ получить осмысленное исключение.
  2. Как я могу его отладить?
  3. Есть ли способ просмотра сгенерированных классов.

благодаря

Теги:
automapper
orika
automapping

2 ответа

1

Здесь вы найдете руководство по устранению неполадок: http://orika-mapper.github.io/orika-docs/troubleshooting.html

То, что я сделал, когда у меня были некоторые исключения, которые я не мог понять, это начать с включения источника (см. Раздел "Генерировать исходный код и/или файлы классов", используйте OrikaSystemProperties#WRITE_SOURCE_FILES и OrikaSystemProperties#WRITE_SOURCE_FILES_TO_PATH). Большую часть времени я мог выяснить, что было недействительным в моем случае.

Если у меня все еще были сомнения, я переключил компилятор на Eclipse JDT (см. Раздел "Включить отладку"), который требует немного больше усилий, чем предыдущее решение, но дает вам полные возможности для отладки.

0

Столкнулся с подобной проблемой. После того, как прошло 4-5 дней проб и ошибок, мое имя свойства boolean начиналось с "is". После устранения этого вопроса проблема была решена.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню