如何配置我的自定义消息转换器以在使用 Spring 4 的无 XML 项目中使用 register-defaults="false"
?
<mvc:annotation-driven register-defaults="false">
<mvc:message-converters>
<bean class="myproject.MyCustomHttpMessageConverter"/>
</mvc:message-converters>
</mvc:annotation-driven>
目前我有这个配置
:
@Configuration
@EnableWebMvc
@ComponentScan
public class TestDataConfig extends WebMvcConfigurerAdapter {
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
converters.add(converter);
}
}
谢谢
最佳答案
您的 Java 配置与 XML 配置中的 register-defaults="false"
类似。你不需要做任何事情。但是,如果您想注册默认值,则必须从 WebMvcConfigurationSupport
扩展并添加以下代码片段中指定的最后一行。
@Configuration
@EnableWebMvc
@ComponentScan
public class TestDataConfig extends WebMvcConfigurationSupport {
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
converters.add(converter);
super.addDefaultHttpMessageConverters(); // Have to call this explicitly to register Default Message Converters.
}
}
关于java - Spring 4 中 register-defaults ="false"的等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25881212/