Я настроил интроспектор аннотации ( источник )
public Jackson2ObjectMapperBuilderCustomizer addCustomBigDecimalDeserialization() {
return new Jackson2ObjectMapperBuilderCustomizer() {
@Override
public void customize(Jackson2ObjectMapperBuilder jacksonObjectMapperBuilder) {
jacksonObjectMapperBuilder.annotationIntrospector(
new JacksonAnnotationIntrospector() {
@Override
public JsonPOJOBuilder.Value findPOJOBuilderConfig(AnnotatedClass ac) {
if (ac.hasAnnotation(
JsonPOJOBuilder.class)) {//If no annotation present use default as empty prefix
return super.findPOJOBuilderConfig(ac);
}
return new JsonPOJOBuilder.Value("build", "");
}
}
);
}
};
}
И все работает, пока я не добавлю @EnableWebMvc
в Applciation
класс.Теперь все dtos, которые имеют аннотации lombok @Value
и @Builder
, хранятся с нулями.Кажется, что мой интроспектор аннотации был заменен кое-где на весну.Но где?Spring загрузочная документация говорит, что достаточно определить Jackson2ObjectMapperBuilderCustomizer
bean.
Любые идеи, как сконфигурировать / исправить установку интроспекторов аннотаций с @EnableWebMvc
?