我在配置RequestMappingHandlerAdapter时遇到问题;用于Spring 4.1.4 Restful WebService配置中。当我配置RequestMappingHandlerAdapter消息转换器时,它不会使用我配置的消息转换器。我在RequestMappingHandlerAdapter.setMessageConverters(List<HttpMessageConverter<?>> messageConverters)
方法和应用程序启动中放置了断点,我看到这个方法被调用了三次。该方法的前两次被称为它具有预配置的消息转换器,其中之一是Jaxb2RootElementHttpMessageConverter。第三次,我的手动配置消息转换器通过application-context.xml bean配置调用此方法。在这一点上,我想我已经用我自己的配置成功重置了消息转换器;但事实并非如此,因为当我调用Restful WebService时,Spring调用Jaxb2RootElementHttpMessageConverter而不是通过application-context.xml手动配置的MarshallingHttpMessageConverter。Spring 4 Rest RequestMappingHandlerAdapter不保存已配置的消息转换器
所以,我需要知道如何:
- 如何告诉Jaxb2RootElementHttpMessageConverter用我的配置JAXB2Marshaller;其配置与JAXBIntroductions工作,
- 注销Jaxb2RootElementHttpMessageConverter在Spring 4.1.4,
- 告诉Spring 4.1.4当看到XML数据,而不是使用的Jaxb2RootElementHttpMessageConverter MarshallingHttpMessageConverter,
- 创建自己的自定义版本Jaxb2RootElementHttpMessageConverter,所以我可以给它正确的JAXB2 Marshaller;它被配置为与JAXBIntroductions一起使用,或者
- 获取RequestMappingHandlerAdapter以仅使用我给它的配置。
任何帮助上述五个选项将不胜感激。
谢谢。
Tonté
你确定它正在配置相同的实例并且没有重复吗? – chrylis 2015-02-10 18:18:52