Skip to content

Latest commit

 

History

History
41 lines (31 loc) · 1.17 KB

README.md

File metadata and controls

41 lines (31 loc) · 1.17 KB

JAXB Codec

This module adds support for encoding and decoding XML via JAXB.

Add JAXBEncoder and/or JAXBDecoder to your Feign.Builder like so:

JAXBContextFactory jaxbFactory = new JAXBContextFactory.Builder()
    .withMarshallerJAXBEncoding("UTF-8")
    .withMarshallerSchemaLocation("http://apihost http://apihost/schema.xsd")
    .build();

Response response = Feign.builder()
                         .encoder(new JAXBEncoder(jaxbFactory))
                         .decoder(new JAXBDecoder(jaxbFactory))
                         .target(Response.class, "https://apihost");

JAXBDecoder can also be created with a builder to allow overriding some default parser options:

JAXBDecoder jaxbDecoder = new JAXBDecoder.Builder()
    .withJAXBContextFactory(jaxbFactory)
    .withNamespaceAware(false) // true by default
    .build();

Usage

The feign library is available from Maven Central.

<dependency>
    <groupId>io.github.openfeign</groupId>
    <artifactId>feign-jaxb</artifactId>
    <version>??feing-jaxb-version??</version>
</dependency>