Переименуйте Jsonproperties из стороннего jar, используя предыдущую версию json - PullRequest
0 голосов
/ 11 января 2019

У меня есть интерфейс REST, который возвращает объект. Одним из полей в этом объекте является объект из стороннего фляги. Сторонний объект jar содержит поля, помеченные @JsonProperty из Jackson 1+. Мы используем Jackson 2+, и эти аннотации не принимаются.

Я пытался создать MixIn, но я все еще не получаю правильные имена свойств.

import org.codehaus.jackson.annotate.JsonProperty;

public class ThirdPartyObject {
    @JsonProperty("lastName")
    public String ln;

    ...
} 

import com.fasterxml.jackson.annotation.JsonProperty;

public interface NewObject {
   @JsonProperty("lastName")
   abstract String getLastName();
}

В моем тесте objectMapper инициализируется с помощью:

objectMapper.setMixIns(ImmutableMap.<Class<?>, Class<?>>of(ThirdPartyObject.class, NewObject.class));

возвращается {"ln": "Smith"} когда я ожидаю {"lastName": "Smith"}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...