Class JacksonXmlModule
- java.lang.Object
-
- com.fasterxml.jackson.databind.Module
-
- com.fasterxml.jackson.databind.module.SimpleModule
-
- com.fasterxml.jackson.dataformat.xml.JacksonXmlModule
-
- All Implemented Interfaces:
com.fasterxml.jackson.core.Versioned,java.io.Serializable
public class JacksonXmlModule extends com.fasterxml.jackson.databind.module.SimpleModule implements java.io.SerializableModule that implements most functionality needed to support producing and consuming XML instead of JSON, used byXmlMapperfor registering handlers for XML-specific processing.NOTE: please do NOT register this directly on
XmlMapper: mapper registers an instance (either one explicitly given in constructor, or, if none, one it configures) and attempts to re-register is unlikely to work as you'd expect.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean_cfgDefaultUseWrapperDetermination of whether indexed properties (arrays, Lists) that are not explicitly annotated (withJacksonXmlElementWrapperor equivalent) should default to using implicit wrapper (with same name as property) or not.protected java.lang.String_cfgNameForTextElementName used for pseudo-property used for returning XML Text value (which does not have actual element name to use).private static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description JacksonXmlModule()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected com.fasterxml.jackson.databind.AnnotationIntrospector_constructIntrospector()voidsetDefaultUseWrapper(boolean state)Method that can be used to define whetherAnnotationIntrospectorwe register will use wrapper for indexed (List, array) properties or not, if there are no explicit annotations.voidsetupModule(com.fasterxml.jackson.databind.Module.SetupContext context)voidsetXMLTextElementName(java.lang.String name)Method that can be used to define alternate "virtual name" to use for XML CDATA segments; that is, text values.-
Methods inherited from class com.fasterxml.jackson.databind.module.SimpleModule
_checkNotNull, addAbstractTypeMapping, addDeserializer, addKeyDeserializer, addKeySerializer, addSerializer, addSerializer, addValueInstantiator, getModuleName, getTypeId, registerSubtypes, registerSubtypes, registerSubtypes, setAbstractTypes, setDeserializerModifier, setDeserializers, setKeyDeserializers, setKeySerializers, setMixInAnnotation, setNamingStrategy, setSerializerModifier, setSerializers, setValueInstantiators, version
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
_cfgDefaultUseWrapper
protected boolean _cfgDefaultUseWrapper
Determination of whether indexed properties (arrays, Lists) that are not explicitly annotated (withJacksonXmlElementWrapperor equivalent) should default to using implicit wrapper (with same name as property) or not. If enabled, wrapping is used by default; if false, it is not.Note that JAXB annotation introspector always assumes "do not wrap by default". Jackson annotations have different default due to backwards compatibility.
- Since:
- 2.1
-
_cfgNameForTextElement
protected java.lang.String _cfgNameForTextElement
Name used for pseudo-property used for returning XML Text value (which does not have actual element name to use). Defaults to empty String, but may be changed for interoperability reasons: JAXB, for example, uses "value" as name.- Since:
- 2.1
-
-
Method Detail
-
setupModule
public void setupModule(com.fasterxml.jackson.databind.Module.SetupContext context)
- Overrides:
setupModulein classcom.fasterxml.jackson.databind.module.SimpleModule
-
setDefaultUseWrapper
public void setDefaultUseWrapper(boolean state)
Method that can be used to define whetherAnnotationIntrospectorwe register will use wrapper for indexed (List, array) properties or not, if there are no explicit annotations. SeeJacksonXmlElementWrapperfor details.Note that method MUST be called before registering the module; otherwise change will not have any effect.
- Parameters:
state- Whether to enable or disable "use wrapper for non-annotated List properties"- Since:
- 2.1
-
setXMLTextElementName
public void setXMLTextElementName(java.lang.String name)
Method that can be used to define alternate "virtual name" to use for XML CDATA segments; that is, text values. Default name is empty String (""); but some frameworks use other names: JAXB, for example, uses "value".Note that method MUST be called before registering the module; otherwise change will not have any effect.
- Parameters:
name- Virtual name to use when exposing XML character data sections- Since:
- 2.1
-
_constructIntrospector
protected com.fasterxml.jackson.databind.AnnotationIntrospector _constructIntrospector()
-
-