Orika mapper NPE между 2 картами - PullRequest
0 голосов
/ 16 мая 2018

У меня есть 2 объекта, которые имеют одно и то же свойство "links", и при использовании Orika для сопоставления с A -> B я получаю

  ma.glasnost.orika.MappingException:ma.glasnost.orika.MappingException: 
While attempting the following mapping:
    sourceType = A
    sourceProperty = links(Links)
    destinationType = B
    destinationProperty = links(Links)
    Error occurred: java.lang.NullPointerException
Caused by: ma.glasnost.orika.MappingException: java.lang.NullPointerException
    at ma.glasnost.orika.impl.generator.MapperGenerator.addMapMethod(MapperGenerator.java:170)
    at ma.glasnost.orika.impl.generator.MapperGenerator.build(MapperGenerator.java:70)
    ... 49 common frames omitted
Caused by: java.lang.NullPointerException: null
    at ma.glasnost.orika.impl.generator.VariableRef.isPrimitive(VariableRef.java:167)
    at ma.glasnost.orika.impl.generator.VariableRef.<init>(VariableRef.java:95)
    at ma.glasnost.orika.impl.generator.specification.MapToMap.generateMappingCode(MapToMap.java:71)
    at ma.glasnost.orika.impl.generator.SourceCodeContext.mapFields(SourceCodeContext.java:778)
    at ma.glasnost.orika.impl.generator.MapperGenerator.generateFieldMapCode(MapperGenerator.java:247)
    at ma.glasnost.orika.impl.generator.MapperGenerator.addMapMethod(MapperGenerator.java:167)
    ... 50 common frames omitted

Объекты определены следующим образом:

class A {
  private Links links
  // getter/setter + other fields
}

class B { 
  private Links links
  // getter/setter + other fields
}

class Links extends HashMap<String, List<Link>> {
}

class Link {
  private String text;
}

Я использую маппер по умолчанию, например, так:

mapper.classMap(A.class, B.class)
      .byDefault()
      .register();

Есть предложения для продолжения?

1 Ответ

0 голосов
/ 16 мая 2018

Вы видите это: https://code.google.com/archive/p/orika/issues/170

Здесь сказано, что проблема была исправлена, но для меня это не выглядит так: https://github.com/orika-mapper/orika/issues/67

или, может быть, это то, что вы видите: https://github.com/orika-mapper/orika/issues/232

Ваша проблема выглядит так же, как и на code.google.com

...