Class JacksonXmlHttpMessageConverter

All Implemented Interfaces:
HttpMessageConverter<Object>, SmartHttpMessageConverter<Object>

public class JacksonXmlHttpMessageConverter extends AbstractJacksonHttpMessageConverter<tools.jackson.dataformat.xml.XmlMapper>
Implementation of HttpMessageConverter that can read and write XML using Jackson 3.x extension component for reading and writing XML encoded data.

By default, this converter supports application/xml, text/xml, and application/*+xml with UTF-8 character set. This can be overridden by setting the supportedMediaTypes property.

The following hint entries are supported:

  • A JSON view with a com.fasterxml.jackson.annotation.JsonView key and the class name of the JSON view as value.
  • A filter provider with a tools.jackson.databind.ser.FilterProvider key and the filter provider class name as value.
Since:
7.0
Author:
Sebastien Deleuze
  • Constructor Details

    • JacksonXmlHttpMessageConverter

      public JacksonXmlHttpMessageConverter()
      Construct a new instance with an XmlMapper created from defensiveXmlFactory() and customized with the JacksonModules found by MapperBuilder.findModules(ClassLoader) and ProblemDetailJacksonXmlMixin.
    • JacksonXmlHttpMessageConverter

      public JacksonXmlHttpMessageConverter(tools.jackson.dataformat.xml.XmlMapper.Builder builder)
      Construct a new instance with the provided builder customized with the JacksonModules found by MapperBuilder.findModules(ClassLoader) and ProblemDetailJacksonXmlMixin.
      See Also:
      • XmlMapper.builder()
    • JacksonXmlHttpMessageConverter

      public JacksonXmlHttpMessageConverter(tools.jackson.dataformat.xml.XmlMapper xmlMapper)
      Construct a new instance with the provided XmlMapper.
      See Also:
      • XmlMapper.builder()
  • Method Details

    • defensiveXmlFactory

      public static tools.jackson.dataformat.xml.XmlFactory defensiveXmlFactory()
      Return an XmlFactory created from StaxUtils.createDefensiveInputFactory() with Spring's defensive setup, i.e. no support for the resolution of DTDs and external entities.
    • getMediaTypesForProblemDetail

      protected List<MediaType> getMediaTypesForProblemDetail()
      Description copied from class: AbstractJacksonHttpMessageConverter
      Return the supported media type(s) for ProblemDetail. By default, an empty list, unless overridden in subclasses.
      Overrides:
      getMediaTypesForProblemDetail in class AbstractJacksonHttpMessageConverter<tools.jackson.dataformat.xml.XmlMapper>