JAVA Json: Конфликтующие определения геттера для свойства

#java #json #jackson #lombok

Вопрос:

У меня странная проблема с использованием Джексона в моем проекте Spring Boot.

У меня есть этот урок:

 @Getter
@Setter
public class MyClassDto {
    @JsonProperty("TSContact")
    private List<Contact> tsContact = new ArrayList<>();
    @JsonProperty("LocationContact")
    private List<Contact> locationContact = new ArrayList<>();
}
 

Когда я пытаюсь сопоставить его с другим классом, используя:

 mapper.map(this, MyClass.class);
 

Я получаю:

 Failed to evaluate Jackson deserialization for type [[simple type, class model.dto.payload.MyClassDto]]: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Conflicting getter definitions for property "TSContact": model.dto.payload.MyClassDto#getTsContact(0 params) vs model.dto.payload.MyClassDto#getLocationContact(0 params)
 

Что я могу сделать, чтобы этого избежать?

Комментарии:

1. можете ли вы предоставить код MyClass?

2. Вы могли бы попробовать без Ломбока и посмотреть, отличается ли ошибка.

3. У Джексона есть проблемы с так называемыми «разделенными свойствами», если они определены определенным образом, семантически точным, но не тем, что он ожидает. Пропустите Ломбок для этого занятия и посмотрите, что произойдет.