Class JacksonXmlBindJsonProvider

All Implemented Interfaces:
Versioned, MessageBodyReader<Object>, MessageBodyWriter<Object>

@Provider @Consumes("*/*") @Produces({"application/json","text/json","*/*"}) public class JacksonXmlBindJsonProvider extends JacksonJsonProvider
JSON content type provider automatically configured to use both Jackson and Jakarta XmlBind annotations (in that order of priority). Otherwise functionally same as JacksonJsonProvider.

Typical usage pattern is to just instantiate instance of this provider for Jakarta-RS and use as is: this will use both Jackson and Jakarta XmlBind annotations (with Jackson annotations having priority).

Note: class annotations are duplicated from super class, since it is not clear whether Jakarta-RS implementations are required to check settings of super-classes. It is important to keep annotations in sync if changed.

  • Field Details

    • DEFAULT_ANNOTATIONS

      public static final Annotations[] DEFAULT_ANNOTATIONS
      Default annotation sets to use, if not explicitly defined during construction: use Jackson annotations if found; if not, use XmlBind annotations as fallback.
  • Constructor Details

    • JacksonXmlBindJsonProvider

      public JacksonXmlBindJsonProvider()
      Default constructor, usually used when provider is automatically configured to be used with Jakarta-RS implementation.
    • JacksonXmlBindJsonProvider

      public JacksonXmlBindJsonProvider(Annotations... annotationsToUse)
      Parameters:
      annotationsToUse - Annotation set(s) to use for configuring data binding
    • JacksonXmlBindJsonProvider

      public JacksonXmlBindJsonProvider(ObjectMapper mapper, Annotations[] annotationsToUse)
      Constructor to use when a custom mapper (usually components like serializer/deserializer factories that have been configured) is to be used.