我喜欢在我的项目中使用spring-hateoas,并使用@EnableHypermediaSupport
进行配置。
问题是,这个神奇的配置注释会注册它自己的MappingJackson2HttpMessageConverter
,我的自定义转换器将被忽略。
背景:我向我的项目添加了一些Jackson模块(例如JodaModule
),并希望使用objectMapper.findAndRegisterModules();
进行注册。这可以通过覆盖WebMvcConfigurationSupport
或WebMvcConfigurer
中的configureMessageConverters(List<HttpMessageConverter<?>> converters)
方法来完成。
我的当前配置如下:
@Configuration
@EnableHypermediaSupport(type = HAL)
public class WebMvcConfiguration extends WebMvcConfigurationSupport {
@Override
protected void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
converter.getObjectMapper().findAndRegisterModules();
converters.add(converter);
}
}
有没有一种方法可以自定义由Spring HATEOAS使用的MappingJackson2HttpMessageConverter
或ObjectMapper
?