AllEncompassingFormHttpMessageConverter will invoke Jackson2ObjectMapperBuilder, so there no need invoke Jackson2ObjectMapperBuilder again

Comment From: snicoll

@qxo Thanks for the PR, but things right now are working as expected. The idea of BackgroundPreinitializer is that it can do so early in a separate thread so that this costly call is applied (and cached) before AllEncompassingFormHttpMessageConverter calls it in the main thread that starts the context.

Comment From: qxo

@qxo Thanks for the PR, but things right now are working as expected. The idea of BackgroundPreinitializer is that it can do so early in a separate thread so that this costly call is applied (and cached) before AllEncompassingFormHttpMessageConverter calls it in the main thread that starts the context.

It's not that case! In BackgroundPreinitializer we already create AllEncompassingFormHttpMessageConverter, so there not create Jackson2ObjectMapperBuilder again!

Comment From: snicoll

The whole point of the background pre-init is to pre-initialize potentially costly objects so that actual calls in the main thread don't need to do that first init. We could surely revisit this but what AllEncompassingFormHttpMessageConverter does is an implementation detail so calling the jackson converter explicitly is intended.