Объект Src имеет свойство:
private List<Pojo> goals;
Целевой объект имеет свойство
private String goal;
Я хочу сопоставить Src.goals.get(0).getName() -> Dest.goal. цели всегда будут содержать один элемент, но его нужно вытащить в виде списка, потому что он исходит от Neo4j.
Я пытался сделать:
userTypeMap.addMappings(mapper -> {
mapper.map(src -> src.getGoals().get(0).getName(), UserDto::setGoal);
});
Но modelmapper не понравился параметр. Затем я попробовал:
userTypeMap.addMappings(mapper -> {
mapper.map(src -> src.getGoals(), UserDto::setGoal);
});
И это дало мне:
"goal": "[org.xxx.models.Goal@5e0b5bd8]",
Затем я попытался добавить преобразователь для List -> String, но это не вызвало. Если я добавлю преобразователь для всего pojo в dto, то мне придется отобразить все pojo, чего я не хочу делать, я просто хочу переопределить это одно свойство.