Я обновил Spring 4.3 до Spring 5.2. Библиотека Джексона также была обновлена с 2.8.3 до 2.10.
У меня возникла следующая проблема с сериализацией
В настоящее время (в 2.8.3), когда я применяю JsonView "D.class" и сериализую SubClass. java, я вижу "title" как json свойство в ответе. После обновления до 2.10 я не вижу "заголовка" в ответе. Кажется, что ему не нравится тот факт, что в SuperClass есть метод получения, как getTitle. Если я изменю JsonProperty с «title» на «title1», это работает. Теперь мне интересно, как это хорошо работает в Джексоне 2.8.3. Возможно ли, что JsonView (класс D.) не применяется должным образом в 2.10, в результате чего Джексон видит оба метода получения как конфликт?
public class SuperClass {
@JsonView({A.class, B.class})
public String getTitle(){}
}
public class SubClass extends SuperClass {
@JsonView({A.class, B.class, C.class, D.class})
@JsonProperty("title")
public String getArticleTitle(){}
}