Spring RestTemplate does not load the correct custom ObjectMapper in MappingJackson2HttpMessageConverter

In my servlet.xml file, I have the following RestTemplate configuration:

<bean id="restTemplate" class="org.springframework.web.client.RestTemplate" >
    <property name="messageConverters">
        <list>
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                        <property name="objectMapper" ref="jodaObjectMapper"/>
            </bean>
        </list>
    </property>
</bean>
<mvc:annotation-driven>
    <mvc:message-converters register-defaults="true">
        <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
            <property name="objectMapper" ref="jodaObjectMapper"/>
        </bean>
    </mvc:message-converters>
</mvc:annotation-driven>

<bean id="jodaObjectMapper" class="com.xyz.JodaObjectMapper"/>

When I deploy the application, the converter correctly configures my custom mapper using the setObjectMapper method. But when I use restTemplate in my service, it uses ObjectMapper by default.

ResponseEntity responseEntity = restTemplate.exchange(url, HttpMethod.PUT, httpEntity, String.class);

debug

Am I doing something wrong? thanks in advance

+4
source share

All Articles