У меня есть интерфейс 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"}