# Uses of Interface
org.springframework.http.converter.HttpMessageConverter

Packages that use HttpMessageConverter
Package
Description
org.springframework.http.converter
Provides an HttpMessageConverter abstraction to convert between Java objects and HTTP input/output messages.
org.springframework.http.converter.cbor
Provides an HttpMessageConverter for the CBOR data format.
org.springframework.http.converter.feed
Provides HttpMessageConverter implementations for handling Atom and RSS feeds.
org.springframework.http.converter.json
Provides HttpMessageConverter implementations for handling JSON.
org.springframework.http.converter.protobuf
Provides an HttpMessageConverter implementation for handling Google Protocol Buffers.
org.springframework.http.converter.smile
Provides an HttpMessageConverter for the Smile data format ("binary JSON").
org.springframework.http.converter.support
Provides a comprehensive HttpMessageConverter variant for form handling.
org.springframework.http.converter.xml
Provides HttpMessageConverter implementations for handling XML.
org.springframework.http.converter.yaml
Provides an `HttpMessageConverter` for the YAML data format.
org.springframework.web.client
Core package of the client-side web support.

## Uses of HttpMessageConverter in org.springframework.http.converter

Subinterfaces of HttpMessageConverter in org.springframework.http.converter
Modifier and Type
Interface
Description
`interface`
`GenericHttpMessageConverter<T>`
A specialization of `HttpMessageConverter` that can convert an HTTP request into a target object of a specified generic type and a source object of a specified generic type into an HTTP response.
`interface`
`SmartHttpMessageConverter<T>`
A specialization of `HttpMessageConverter` that can convert an HTTP request into a target object of a specified `ResolvableType` and a source object of a specified `ResolvableType` into an HTTP response with optional hints.
Classes in org.springframework.http.converter that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`AbstractGenericHttpMessageConverter<T>`
Abstract base class for most `GenericHttpMessageConverter` implementations.
`class`
`AbstractHttpMessageConverter<T>`
Abstract base class for most `HttpMessageConverter` implementations.
`class`
`AbstractKotlinSerializationHttpMessageConverter<T extends kotlinx.serialization.SerialFormat>`
Abstract base class for `HttpMessageConverter` implementations that use Kotlin serialization.
`class`
`AbstractSmartHttpMessageConverter<T>`
Abstract base class for most `SmartHttpMessageConverter` implementations.
`class`
`BufferedImageHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write `BufferedImages`.
`class`
`ByteArrayHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write byte arrays.
`class`
`FormHttpMessageConverter`
Implementation of `HttpMessageConverter` to read and write 'normal' HTML forms and also to write (but not read) multipart data (for example, file uploads).
`class`
`KotlinSerializationBinaryHttpMessageConverter<T extends kotlinx.serialization.BinaryFormat>`
Abstract base class for `HttpMessageConverter` implementations that defer to Kotlin binary serializers.
`class`
`KotlinSerializationStringHttpMessageConverter<T extends kotlinx.serialization.StringFormat>`
Abstract base class for `HttpMessageConverter` implementations that defer to Kotlin string serializers.
`class`
`ObjectToStringHttpMessageConverter`
An `HttpMessageConverter` that uses `StringHttpMessageConverter` for reading and writing content and a `ConversionService` for converting the String content to and from the target object type.
`class`
`ResourceHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read/write `Resources` and supports byte range requests.
`class`
`ResourceRegionHttpMessageConverter`
Implementation of `HttpMessageConverter` that can write a single `ResourceRegion` or Collections of `ResourceRegions`.
`class`
`StringHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write strings.
Methods in org.springframework.http.converter that return types with arguments of type HttpMessageConverter
Modifier and Type
Method
Description
`List<HttpMessageConverter<?>>`
FormHttpMessageConverter.`getPartConverters()`
Return the configured converters for MIME parts.
Methods in org.springframework.http.converter with parameters of type HttpMessageConverter
Modifier and Type
Method
Description
`void`
FormHttpMessageConverter.`addPartConverter(HttpMessageConverter<?> partConverter)`
Add a message body converter.
Method parameters in org.springframework.http.converter with type arguments of type HttpMessageConverter
Modifier and Type
Method
Description
`void`
FormHttpMessageConverter.`setPartConverters(List<HttpMessageConverter<?>> partConverters)`
Set the message body converters to use.

## Uses of HttpMessageConverter in org.springframework.http.converter.cbor

Classes in org.springframework.http.converter.cbor that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`KotlinSerializationCborHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write CBOR using kotlinx.serialization.
`class`
`MappingJackson2CborHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write the CBOR data format using the dedicated Jackson 2.x extension.

## Uses of HttpMessageConverter in org.springframework.http.converter.feed

Classes in org.springframework.http.converter.feed that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`AbstractWireFeedHttpMessageConverter<T extends com.rometools.rome.feed.WireFeed>`
Abstract base class for Atom and RSS Feed message converters, using the ROME tools project.
`class`
`AtomFeedHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write Atom feeds.
`class`
`RssChannelHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write RSS feeds.

## Uses of HttpMessageConverter in org.springframework.http.converter.json

Classes in org.springframework.http.converter.json that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`AbstractJackson2HttpMessageConverter`
Abstract base class for Jackson based and content type independent `HttpMessageConverter` implementations.
`class`
`AbstractJsonHttpMessageConverter`
Common base class for plain JSON converters, for example, Gson and JSON-B.
`class`
`GsonHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write JSON using the Google Gson library.
`class`
`JsonbHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write JSON using the JSON Binding API.
`class`
`KotlinSerializationJsonHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write JSON using kotlinx.serialization.
`class`
`MappingJackson2HttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write JSON using Jackson 2.x's `ObjectMapper`.

## Uses of HttpMessageConverter in org.springframework.http.converter.protobuf

Classes in org.springframework.http.converter.protobuf that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`KotlinSerializationProtobufHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write Protocol Buffers using kotlinx.serialization.
`class`
`ProtobufHttpMessageConverter`
An `HttpMessageConverter` that reads and writes `com.google.protobuf.Messages` using Google Protocol Buffers.
`class`
`ProtobufJsonFormatHttpMessageConverter`
Subclass of `ProtobufHttpMessageConverter` which enforces the use of Protobuf 3 and its official library `"com.google.protobuf:protobuf-java-util"` for JSON processing.

## Uses of HttpMessageConverter in org.springframework.http.converter.smile

Classes in org.springframework.http.converter.smile that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`MappingJackson2SmileHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write Smile data format ("binary JSON") using the dedicated Jackson 2.x extension.

## Uses of HttpMessageConverter in org.springframework.http.converter.support

Classes in org.springframework.http.converter.support that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`AllEncompassingFormHttpMessageConverter`
Extension of `FormHttpMessageConverter`, adding support for XML, JSON, Smile, CBOR, Protobuf and Yaml based parts when related libraries are present in the classpath.

## Uses of HttpMessageConverter in org.springframework.http.converter.xml

Classes in org.springframework.http.converter.xml that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`AbstractJaxb2HttpMessageConverter<T>`
Abstract base class for `HttpMessageConverters` that use JAXB2.
`class`
`AbstractXmlHttpMessageConverter<T>`
Abstract base class for `HttpMessageConverters` that convert from/to XML.
`class`
`Jaxb2CollectionHttpMessageConverter<T extends Collection>`
An `HttpMessageConverter` that can read XML collections using JAXB2.
`class`
`Jaxb2RootElementHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write XML using JAXB2.
`class`
`MappingJackson2XmlHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write XML using Jackson 2.x extension component for reading and writing XML encoded data.
`class`
`MarshallingHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write XML using Spring's `Marshaller` and `Unmarshaller` abstractions.
`class`
`SourceHttpMessageConverter<T extends Source>`
Implementation of `HttpMessageConverter` that can read and write `Source` objects.

## Uses of HttpMessageConverter in org.springframework.http.converter.yaml

Classes in org.springframework.http.converter.yaml that implement HttpMessageConverter
Modifier and Type
Class
Description
`class`
`MappingJackson2YamlHttpMessageConverter`
Implementation of `HttpMessageConverter` that can read and write the YAML data format using the dedicated Jackson 2.x extension.

## Uses of HttpMessageConverter in org.springframework.web.client

Methods in org.springframework.web.client that return types with arguments of type HttpMessageConverter
Modifier and Type
Method
Description
`List<HttpMessageConverter<?>>`
RestTemplate.`getMessageConverters()`
Return the list of message body converters.
Method parameters in org.springframework.web.client with type arguments of type HttpMessageConverter
Modifier and Type
Method
Description
`RestClient.Builder`
RestClient.Builder.`messageConverters(Consumer<List<HttpMessageConverter<?>>> configurer)`
Configure the message converters for the `RestClient` to use.
`RestClient.Builder`
RestClient.Builder.`messageConverters(List<HttpMessageConverter<?>> messageConverters)`
Set the message converters for the `RestClient` to use.
`void`
ExtractingResponseErrorHandler.`setMessageConverters(List<HttpMessageConverter<?>> messageConverters)`
Set the message converters to use by this extractor.
`void`
RestTemplate.`setMessageConverters(List<HttpMessageConverter<?>> messageConverters)`
Set the message body converters to use.
Constructor parameters in org.springframework.web.client with type arguments of type HttpMessageConverter
Modifier
Constructor
Description
``
`ExtractingResponseErrorHandler(List<HttpMessageConverter<?>> messageConverters)`
Create a new `ExtractingResponseErrorHandler` with the given `HttpMessageConverter` instances.
``
`HttpMessageConverterExtractor(Class<T> responseType, List<HttpMessageConverter<?>> messageConverters)`
Create a new instance of the `HttpMessageConverterExtractor` with the given response type and message converters.
``
`HttpMessageConverterExtractor(Type responseType, List<HttpMessageConverter<?>> messageConverters)`
Creates a new instance of the `HttpMessageConverterExtractor` with the given response type and message converters.
``
`RestTemplate(List<HttpMessageConverter<?>> messageConverters)`
Create a new instance with the given message converters.