2016-08-21 41 views
1

返回添加XML声明我已经添加以下到我的应用如何在XML从终点

@Bean 
public MappingJackson2XmlHttpMessageConverter mappingJackson2XmlHttpMessageConverter() { 
    MappingJackson2XmlHttpMessageConverter xmlConverter = new MappingJackson2XmlHttpMessageConverter(); 
    XmlMapper objectMapper = new XmlMapper(); 
    objectMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); 
    xmlConverter.setObjectMapper(objectMapper); 
    return xmlConverter; 
} 

然而,返回的XML如下即XML声明失踪。任何想法我还需要添加什么?

<Data> 
<description></description> 
<codeList> 
    <codeList> 
     <description>User ID</description> 
     <key>dfdfeee</key> 
    </codeList> 
    <codeList> 
     <description>Activation ID</description> 
     <key>2ddddd9881</key> 
    </codeList> 
</codeList> 

回答

2

申报豆:

@Bean 
public MappingJackson2XmlHttpMessageConverter mappingJackson2XmlHttpMessageConverter(Jackson2ObjectMapperBuilder builder) { 
    XmlMapper xmlMapper = builder.createXmlMapper(true).build(); 
    xmlMapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); 
    return new MappingJackson2XmlHttpMessageConverter(xmlMapper); 
} 

BTW,这应该覆盖

org.springframework.boot.autoconfigure.web.JacksonHttpMessageConvertersConfiguration.MappingJackson2XmlHttpMessageConverterConfiguration 

而且豆自动配置,这种方式应采取一切XmlMapper/ObjectMapper定制, 如果你有。