Feign makes writing java http clients easier
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1.0 KiB

Jackson-Jaxb Codec

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

Add JacksonJaxbJsonEncoder and/or JacksonJaxbJsonDecoder to your Feign.Builder like so:

GitHub github = Feign.builder()
                     .encoder(new JacksonJaxbJsonEncoder())
                     .decoder(new JacksonJaxbJsonDecoder())
                     .target(GitHub.class, "https://api.github.com");

If you want to customize the ObjectMapper that is used, provide it to the JacksonJaxbJsonEncoder and JacksonJaxbJsonDecoder:

ObjectMapper mapper = new ObjectMapper()
        .setSerializationInclusion(JsonInclude.Include.NON_NULL)
        .configure(SerializationFeature.INDENT_OUTPUT, true)
        .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

GitHub github = Feign.builder()
                     .encoder(new JacksonJaxbJsonEncoder(mapper))
                     .decoder(new JacksonJaxbJsonDecoder(mapper))
                     .target(GitHub.class, "https://api.github.com");