Top Description Inners Fields Constructors Methods
com.fasterxml.jackson.module.jakarta.xmlbind

public Class JakartaXmlBindAnnotationModule

extends Module
Class Inheritance
Imports
com.fasterxml.jackson.annotation.JsonInclude, com.fasterxml.jackson.core.Version

Module that can be registered to add support for JAXB annotations. It does basically equivalent of
   objectMapper.setAnnotationIntrospector(...);
with combination of JakartaXmlBindAnnotationIntrospector and existing default introspector(s) (if any), depending on configuration (by default, JAXB annotations are used as Priority#PRIMARY annotations).

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static enum
JakartaXmlBindAnnotationModule.Priority

Enumeration that defines how we use JAXB Annotations: either as "primary" annotations (before any other already configured introspector -- most likely default JacksonAnnotationIntrospector) or as "secondary" annotations (after any other already configured introspector(s)).

Field Summary

Modifier and TypeField and Description
protected JakartaXmlBindAnnotationIntrospector
_introspector

If the introspector is explicitly set or passed, we'll hold on to that until registration.

protected String
_nameUsedForXmlValue

Value to pass to JakartaXmlBindAnnotationIntrospector#setNameUsedForXmlValue if introspector constructed by the module.

protected JsonInclude.Include
protected JakartaXmlBindAnnotationModule.Priority
_priority

Priority to use when registering annotation introspector: default value is Priority#PRIMARY.

Constructor Summary

AccessConstructor and Description
public
public

Method Summary

Modifier and TypeMethod and Description
public String
getModuleName()

Implements abstract com.fasterxml.jackson.databind.Module.getModuleName.

Method that returns a display that can be used by Jackson for informational purposes, as well as in associating extensions with module that provides them.

public String
public JsonInclude.Include
public JakartaXmlBindAnnotationModule.Priority
public JakartaXmlBindAnnotationModule
public JakartaXmlBindAnnotationModule
public JakartaXmlBindAnnotationModule
setPriority(JakartaXmlBindAnnotationModule.Priority p)

Method for defining whether JAXB annotations should be added as primary or secondary annotations (compared to already registered annotations).

public void
setupModule(Module.SetupContext context)

Implements abstract com.fasterxml.jackson.databind.Module.setupModule.

Method called by ObjectMapper when module is registered.

public Version
version()

Implements abstract com.fasterxml.jackson.databind.Module.version.

Implements com.fasterxml.jackson.core.Versioned.version.

Method that returns version of this module.

Inherited from com.fasterxml.jackson.databind.Module:
getDependenciesgetTypeId

Field Detail

_introspectorback to summary
protected JakartaXmlBindAnnotationIntrospector _introspector

If the introspector is explicitly set or passed, we'll hold on to that until registration.

Since
2.7
_nameUsedForXmlValueback to summary
protected String _nameUsedForXmlValue

Value to pass to JakartaXmlBindAnnotationIntrospector#setNameUsedForXmlValue if introspector constructed by the module.

Since
2.12
_nonNillableInclusionback to summary
protected JsonInclude.Include _nonNillableInclusion

Value to pass to JakartaXmlBindAnnotationIntrospector#setNonNillableInclusion if defined and non-null.

Since
2.7
_priorityback to summary
protected JakartaXmlBindAnnotationModule.Priority _priority

Priority to use when registering annotation introspector: default value is Priority#PRIMARY.

Constructor Detail

JakartaXmlBindAnnotationModuleback to summary
public JakartaXmlBindAnnotationModule()
JakartaXmlBindAnnotationModuleback to summary
public JakartaXmlBindAnnotationModule(JakartaXmlBindAnnotationIntrospector intr)
Since
2.7

Method Detail

getModuleNameback to summary
public String getModuleName()

Implements abstract com.fasterxml.jackson.databind.Module.getModuleName.

Doc from com.fasterxml.jackson.databind.Module.getModuleName.

Method that returns a display that can be used by Jackson for informational purposes, as well as in associating extensions with module that provides them.

Annotations
@Override
getNameUsedForXmlValueback to summary
public String getNameUsedForXmlValue()
getNonNillableInclusionback to summary
public JsonInclude.Include getNonNillableInclusion()
Since
2.7
getPriorityback to summary
public JakartaXmlBindAnnotationModule.Priority getPriority()
setNameUsedForXmlValueback to summary
public JakartaXmlBindAnnotationModule setNameUsedForXmlValue(String name)
Since
2.12
setNonNillableInclusionback to summary
public JakartaXmlBindAnnotationModule setNonNillableInclusion(JsonInclude.Include incl)
Since
2.7
setPriorityback to summary
public JakartaXmlBindAnnotationModule setPriority(JakartaXmlBindAnnotationModule.Priority p)

Method for defining whether JAXB annotations should be added as primary or secondary annotations (compared to already registered annotations).

Note

method MUST be called before registering the module -- calling afterwards will not have any effect on previous registrations.

setupModuleback to summary
public void setupModule(Module.SetupContext context)

Implements abstract com.fasterxml.jackson.databind.Module.setupModule.

Doc from com.fasterxml.jackson.databind.Module.setupModule.

Method called by ObjectMapper when module is registered. It is called to let module register functionality it provides, using callback methods passed-in context object exposes.

Annotations
@Override
versionback to summary
public Version version()

Implements abstract com.fasterxml.jackson.databind.Module.version.

Implements com.fasterxml.jackson.core.Versioned.version.

Doc from com.fasterxml.jackson.databind.Module.version.

Method that returns version of this module. Can be used by Jackson for informational purposes.

Returns:Version

Doc from com.fasterxml.jackson.core.Versioned.version.

Version of the component

Annotations
@Override
com.fasterxml.jackson.module.jakarta.xmlbind back to summary

public final Enum JakartaXmlBindAnnotationModule.Priority

extends Enum<JakartaXmlBindAnnotationModule.Priority>
Class Inheritance

Enumeration that defines how we use JAXB Annotations: either as "primary" annotations (before any other already configured introspector -- most likely default JacksonAnnotationIntrospector) or as "secondary" annotations (after any other already configured introspector(s)).

Default choice is PRIMARY

Note that if you want to use JAXB annotations as the only annotations, you must directly set annotation introspector by calling com.fasterxml.jackson.databind.ObjectMapper#setAnnotationIntrospector.

Field Summary

Modifier and TypeField and Description
public static final JakartaXmlBindAnnotationModule.Priority
public static final JakartaXmlBindAnnotationModule.Priority

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static JakartaXmlBindAnnotationModule.Priority
public static JakartaXmlBindAnnotationModule.Priority[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

PRIMARYback to summary
public static final JakartaXmlBindAnnotationModule.Priority PRIMARY
SECONDARYback to summary
public static final JakartaXmlBindAnnotationModule.Priority SECONDARY

Constructor Detail

Priorityback to summary
private Priority()

Method Detail

valueOfback to summary
public static JakartaXmlBindAnnotationModule.Priority valueOf(String name)
valuesback to summary
public static JakartaXmlBindAnnotationModule.Priority[] values()