Package org.springframework.http.converter.xml

# Class MappingJackson2XmlHttpMessageConverter

java.lang.Object
org.springframework.http.converter.AbstractHttpMessageConverter<T>
org.springframework.http.converter.AbstractGenericHttpMessageConverter<Object>
org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter
org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter

All Implemented Interfaces:
  `GenericHttpMessageConverter<Object>`, `HttpMessageConverter<Object>`

public class MappingJackson2XmlHttpMessageConverter extends AbstractJackson2HttpMessageConverter
Implementation of `HttpMessageConverter` that can read and write XML using Jackson 2.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 default constructor uses the default configuration provided by `Jackson2ObjectMapperBuilder`.

Since:
  4.1
Author:
  Sebastien Deleuze

## Field Summary

### Fields inherited from class org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter

`defaultObjectMapper`

### Fields inherited from class org.springframework.http.converter.AbstractHttpMessageConverter

`logger`

## Constructor Summary

Constructors
Constructor
Description
`MappingJackson2XmlHttpMessageConverter()`
Construct a new `MappingJackson2XmlHttpMessageConverter` using default configuration provided by `Jackson2ObjectMapperBuilder`.
`MappingJackson2XmlHttpMessageConverter(ObjectMapper objectMapper)`
Construct a new `MappingJackson2XmlHttpMessageConverter` with a custom `ObjectMapper` (must be a `XmlMapper` instance).

## Method Summary

Modifier and Type
Method
Description
`protected List<MediaType>`
`getMediaTypesForProblemDetail()`
Return the supported media type(s) for `ProblemDetail`.
`void`
`setObjectMapper(ObjectMapper objectMapper)`
Configure the main `ObjectMapper` to use for Object conversion.

### Methods inherited from class org.springframework.http.converter.json.AbstractJackson2HttpMessageConverter

`canRead, canRead, canWrite, customizeReader, customizeWriter, getCharset, getContentLength, getDefaultContentType, getJavaType, getJsonEncoding, getObjectMapper, getObjectMappersForType, getSupportedMediaTypes, logWarningIfNecessary, read, readInternal, registerObjectMappersForType, setPrettyPrint, setSupportedMediaTypes, supportsRepeatableWrites, writeInternal, writePrefix, writeSuffix`

### Methods inherited from class org.springframework.http.converter.AbstractGenericHttpMessageConverter

`canWrite, supports, write, writeInternal`

### Methods inherited from class org.springframework.http.converter.AbstractHttpMessageConverter

`addDefaultHeaders, canRead, canWrite, getDefaultCharset, getSupportedMediaTypes, read, setDefaultCharset, write`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.springframework.http.converter.HttpMessageConverter

`getSupportedMediaTypes, read, write`

## Constructor Details

### MappingJackson2XmlHttpMessageConverter

public MappingJackson2XmlHttpMessageConverter()
Construct a new `MappingJackson2XmlHttpMessageConverter` using default configuration provided by `Jackson2ObjectMapperBuilder`.

### MappingJackson2XmlHttpMessageConverter

public MappingJackson2XmlHttpMessageConverter(ObjectMapper objectMapper)
Construct a new `MappingJackson2XmlHttpMessageConverter` with a custom `ObjectMapper` (must be a `XmlMapper` instance). You can use `Jackson2ObjectMapperBuilder` to build it easily.

See Also:
  - `Jackson2ObjectMapperBuilder.xml()`

## Method Details

### setObjectMapper

public void setObjectMapper(ObjectMapper objectMapper)
Configure the main `ObjectMapper` to use for Object conversion. If not set, a default `ObjectMapper` instance is created.

Setting a custom-configured `ObjectMapper` is one way to take further control of the JSON serialization process. For example, an extended `SerializerFactory` can be configured that provides custom serializers for specific types. Another option for refining the serialization process is to use Jackson's provided annotations on the types to be serialized, in which case a custom-configured ObjectMapper is unnecessary.

The `ObjectMapper` parameter must be an `XmlMapper` instance.

Overrides:
  `setObjectMapper` in class `AbstractJackson2HttpMessageConverter`
See Also:
  - `AbstractJackson2HttpMessageConverter.registerObjectMappersForType(Class, Consumer)`

### getMediaTypesForProblemDetail

protected List<MediaType> getMediaTypesForProblemDetail()
Description copied from class: `AbstractJackson2HttpMessageConverter`
Return the supported media type(s) for `ProblemDetail`. By default, an empty list, unless overridden in subclasses.

Overrides:
  `getMediaTypesForProblemDetail` in class `AbstractJackson2HttpMessageConverter`