J'ai essayé d'ajouter gestionnaire de problème personnalisé pour objet mappeur avec Jackson2ObjectMapperBuilderCustomizer:Impossible de définir ProblemHandler à ObjectMapper au printemps Boot
@Bean
public Jackson2ObjectMapperBuilderCustomizer customizer() {
return new Jackson2ObjectMapperBuilderCustomizer() {
@Override
public void customize(Jackson2ObjectMapperBuilder builder) {
ObjectMapper m = builder.build();
m.addHandler(
new DeserializationProblemHandler() {
@Override
public boolean handleUnknownProperty(DeserializationContext ctxt, JsonParser p, JsonDeserializer<?> deserializer, Object beanOrClass, String propertyName) throws IOException {
System.out.println("ahahahaa");
return super.handleUnknownProperty(ctxt, p, deserializer, beanOrClass, propertyName);
}
}
);
}
};
}
Mais quand j'autowired la propriété de haricot ObjectMapper est nulle.
J'ai aussi essayé juste personnalisons avec existais ObjectMapper:
@Autowired
public customize(ObjectMapper mapper) {
...
}
mais le résultat est le même. Je ne sais pas qui peut effacer cette propriété. Je n'initialise pas d'autres constructeurs/usines/etc de mappeur d'objet dans un autre endroit. Qu'est-ce que je fais mal?