Dear Camel team, We have a question about the JacksonDataFormat in Camel 2.25. In JacksonDataFormat class doStart() method, it looks for the single ObjectMapper in the registry. If found, the single ObjectMapper instance would be used and be applied with properties in the JacksonDataFormat instance.
This behavior creates a couple of problems: 1. If Camel is used with Spring boot, spring boot would auto config a ObjectMapper with Spring boot namespace properties. By default, Camel JacksonDataFormat would use it and override the Spring boot configuration with Camel's properties. 2. If Camel has multiple steps of "marshal" or "unmarshal" in the routes and they have confliting settings, the last "marshal" or "unmarshal" step setting would take precedence. I believe those are unexpected behaviors. The question is why JacksonDataFormat does not make a copy of the single ObjectMapper in the registry. In that way, each of them are configured independently. Thanks Yifan