org.codehaus.jackson.jaxrs
Class JacksonJaxbJsonProvider

java.lang.Object
  extended by org.codehaus.jackson.jaxrs.JacksonJsonProvider
      extended by org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
All Implemented Interfaces:
MessageBodyReader<Object>, MessageBodyWriter<Object>, Versioned

@Provider
public class JacksonJaxbJsonProvider
extends JacksonJsonProvider

JSON content type provider automatically configured to use both Jackson and JAXB annotations (in that order of priority). Otherwise functionally same as JacksonJsonProvider.

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

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

Since:
1.3

Field Summary
static Annotations[] DEFAULT_ANNOTATIONS
          Default annotation sets to use, if not explicitly defined during construction: use Jackson annotations if found; if not, use JAXB annotations as fallback.
 
Fields inherited from class org.codehaus.jackson.jaxrs.JacksonJsonProvider
_cfgCheckCanDeserialize, _cfgCheckCanSerialize, _cfgCustomUntouchables, _jsonpFunctionName, _mapperConfig, _providers, _unreadableClasses, _untouchables, _unwritableClasses, BASIC_ANNOTATIONS
 
Constructor Summary
JacksonJaxbJsonProvider()
          Default constructor, usually used when provider is automatically configured to be used with JAX-RS implementation.
JacksonJaxbJsonProvider(Annotations... annotationsToUse)
           
JacksonJaxbJsonProvider(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.
 
Method Summary
 
Methods inherited from class org.codehaus.jackson.jaxrs.JacksonJsonProvider
_containedIn, _findView, addUntouchable, checkCanDeserialize, checkCanSerialize, configure, configure, configure, configure, disable, disable, disable, disable, enable, enable, enable, enable, findEncoding, getSize, isJsonType, isReadable, isWriteable, locateMapper, readFrom, setAnnotationsToUse, setJSONPFunctionName, setMapper, version, writeTo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

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 JAXB annotations as fallback.

Constructor Detail

JacksonJaxbJsonProvider

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


JacksonJaxbJsonProvider

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

JacksonJaxbJsonProvider

public JacksonJaxbJsonProvider(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.