Class XmlMapper

java.lang.Object
com.fasterxml.jackson.core.TreeCodec
com.fasterxml.jackson.core.ObjectCodec
com.fasterxml.jackson.databind.ObjectMapper
com.fasterxml.jackson.dataformat.xml.XmlMapper
All Implemented Interfaces:
com.fasterxml.jackson.core.Versioned, Serializable

public class XmlMapper extends com.fasterxml.jackson.databind.ObjectMapper
Customized ObjectMapper that will read and write XML instead of JSON, using XML-backed JsonFactory implementation (XmlFactory).

Mapper itself overrides some aspects of functionality to try to handle data binding aspects as similar to JAXB as possible.

Note that most of configuration should be done by pre-constructing JacksonXmlModule explicitly, instead of relying on default settings.

See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Builder implementation for constructing XmlMapper instances.

    Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.ObjectMapper

    com.fasterxml.jackson.databind.ObjectMapper.DefaultTypeResolverBuilder, com.fasterxml.jackson.databind.ObjectMapper.DefaultTyping
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final JacksonXmlModule
     
    protected static final JacksonXmlModule
     
    protected static final DefaultXmlPrettyPrinter
     
    private static final long
     

    Fields inherited from class com.fasterxml.jackson.databind.ObjectMapper

    _coercionConfigs, _configOverrides, _deserializationConfig, _deserializationContext, _injectableValues, _jsonFactory, _mixIns, _registeredModuleTypes, _rootDeserializers, _serializationConfig, _serializerFactory, _serializerProvider, _subtypeResolver, _typeFactory, DEFAULT_ANNOTATION_INTROSPECTOR, DEFAULT_BASE
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
     
     
     
     
     
    XmlMapper(XmlFactory xmlFactory)
     
     
    XmlMapper(XmlFactory xmlFactory, JacksonXmlModule module)
     
    protected
     
     
     
     
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?>
    _constructDefaultTypeResolverBuilder(com.fasterxml.jackson.databind.ObjectMapper.DefaultTyping applicability, com.fasterxml.jackson.databind.jsontype.PolymorphicTypeValidator ptv)
     
     
    builder(XmlFactory streamFactory)
     
    com.fasterxml.jackson.databind.ObjectMapper
    configure(FromXmlParser.Feature f, boolean state)
     
    com.fasterxml.jackson.databind.ObjectMapper
    configure(ToXmlGenerator.Feature f, boolean state)
     
     
    com.fasterxml.jackson.databind.ObjectMapper
     
    com.fasterxml.jackson.databind.ObjectMapper
     
    com.fasterxml.jackson.databind.ObjectMapper
     
    com.fasterxml.jackson.databind.ObjectMapper
     
     
    <T> T
    readValue(XMLStreamReader r, com.fasterxml.jackson.core.type.TypeReference<T> valueTypeRef)
    Method for reading a single XML value from given XML-specific input source; useful for incremental data-binding, combining traversal using basic Stax XMLStreamReader with data-binding by Jackson.
    <T> T
    readValue(XMLStreamReader r, com.fasterxml.jackson.databind.JavaType valueType)
    Method for reading a single XML value from given XML-specific input source; useful for incremental data-binding, combining traversal using basic Stax XMLStreamReader with data-binding by Jackson.
    <T> T
    readValue(XMLStreamReader r, Class<T> valueType)
    Method for reading a single XML value from given XML-specific input source; useful for incremental data-binding, combining traversal using basic Stax XMLStreamReader with data-binding by Jackson.
    setDefaultUseWrapper(boolean state)
    Deprecated.
    void
     
    protected void
    Deprecated.
    com.fasterxml.jackson.core.Version
     
    void
    Method for serializing given value using specific XMLStreamReader: useful when building large XML files by binding individual items, one at a time.
     

    Methods inherited from class com.fasterxml.jackson.databind.ObjectMapper

    _assertNotNull, _checkInvalidCopy, _configAndWriteValue, _convert, _findRootDeserializer, _initForReading, _newReader, _newReader, _newWriter, _newWriter, _newWriter, _readMapAndClose, _readTreeAndClose, _readValue, _serializerProvider, _verifyNoTrailingTokens, _verifySchemaType, _writeValueAndClose, acceptJsonFormatVisitor, acceptJsonFormatVisitor, activateDefaultTyping, activateDefaultTyping, activateDefaultTyping, activateDefaultTypingAsProperty, addHandler, addMixIn, addMixInAnnotations, canDeserialize, canDeserialize, canSerialize, canSerialize, clearProblemHandlers, coercionConfigDefaults, coercionConfigFor, coercionConfigFor, configOverride, configure, configure, configure, configure, configure, configure, constructType, constructType, convertValue, convertValue, convertValue, copyWith, createArrayNode, createDeserializationContext, createGenerator, createGenerator, createGenerator, createGenerator, createGenerator, createNonBlockingByteArrayParser, createObjectNode, createParser, createParser, createParser, createParser, createParser, createParser, createParser, createParser, createParser, createParser, deactivateDefaultTyping, defaultClassIntrospector, disable, disable, disable, disable, disable, disable, disable, disableDefaultTyping, enable, enable, enable, enable, enable, enable, enable, enableDefaultTyping, enableDefaultTyping, enableDefaultTyping, enableDefaultTypingAsProperty, findAndRegisterModules, findMixInClassFor, findModules, findModules, generateJsonSchema, getDateFormat, getDeserializationConfig, getDeserializationContext, getInjectableValues, getNodeFactory, getPolymorphicTypeValidator, getPropertyNamingStrategy, getRegisteredModuleIds, getSerializationConfig, getSerializerFactory, getSerializerProvider, getSerializerProviderInstance, getSubtypeResolver, getTypeFactory, getVisibilityChecker, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, isEnabled, missingNode, mixInCount, nullNode, reader, reader, reader, reader, reader, reader, reader, reader, reader, reader, reader, readerFor, readerFor, readerFor, readerForArrayOf, readerForListOf, readerForMapOf, readerForUpdating, readerWithView, readTree, readTree, readTree, readTree, readTree, readTree, readTree, readTree, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValue, readValues, readValues, readValues, readValues, registerModule, registerModules, registerModules, registerSubtypes, registerSubtypes, registerSubtypes, setAccessorNaming, setAnnotationIntrospector, setAnnotationIntrospectors, setBase64Variant, setConfig, setConfig, setConstructorDetector, setDateFormat, setDefaultAttributes, setDefaultLeniency, setDefaultMergeable, setDefaultPrettyPrinter, setDefaultPropertyInclusion, setDefaultPropertyInclusion, setDefaultSetterInfo, setDefaultTyping, setDefaultVisibility, setFilterProvider, setFilters, setHandlerInstantiator, setInjectableValues, setLocale, setMixInAnnotations, setMixInResolver, setMixIns, setNodeFactory, setPolymorphicTypeValidator, setPropertyInclusion, setPropertyNamingStrategy, setSerializationInclusion, setSerializerFactory, setSerializerProvider, setSubtypeResolver, setTimeZone, setTypeFactory, setVisibility, setVisibility, setVisibilityChecker, tokenStreamFactory, treeAsTokens, treeToValue, treeToValue, updateValue, valueToTree, writer, writer, writer, writer, writer, writer, writer, writer, writer, writer, writerFor, writerFor, writerFor, writerWithDefaultPrettyPrinter, writerWithType, writerWithType, writerWithType, writerWithView, writeTree, writeTree, writeValue, writeValue, writeValue, writeValue, writeValue, writeValueAsBytes, writeValueAsString

    Methods inherited from class com.fasterxml.jackson.core.ObjectCodec

    getJsonFactory

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

  • Method Details

    • copy

      public XmlMapper copy()
      Overrides:
      copy in class com.fasterxml.jackson.databind.ObjectMapper
    • xmlBuilder

      public static XmlMapper.Builder xmlBuilder()
      Since:
      2.10
    • builder

      public static XmlMapper.Builder builder()
      Since:
      2.10
    • builder

      public static XmlMapper.Builder builder(XmlFactory streamFactory)
      Since:
      2.10
    • version

      public com.fasterxml.jackson.core.Version version()
      Specified by:
      version in interface com.fasterxml.jackson.core.Versioned
      Overrides:
      version in class com.fasterxml.jackson.databind.ObjectMapper
    • _constructDefaultTypeResolverBuilder

      protected com.fasterxml.jackson.databind.jsontype.TypeResolverBuilder<?> _constructDefaultTypeResolverBuilder(com.fasterxml.jackson.databind.ObjectMapper.DefaultTyping applicability, com.fasterxml.jackson.databind.jsontype.PolymorphicTypeValidator ptv)
      Overrides:
      _constructDefaultTypeResolverBuilder in class com.fasterxml.jackson.databind.ObjectMapper
    • setXMLTextElementName

      @Deprecated protected void setXMLTextElementName(String name)
      Deprecated.
      Method called by JacksonXmlModule to pass configuration information to XmlFactory, during registration; NOT exposed as public method since configuration should be done via JacksonXmlModule.
      Since:
      2.1
    • setDefaultUseWrapper

      @Deprecated public XmlMapper setDefaultUseWrapper(boolean state)
      Deprecated.
      Since 2.7
    • setXmlNameProcessor

      public void setXmlNameProcessor(XmlNameProcessor processor)
      Since:
      2.14
    • getFactory

      public XmlFactory getFactory()
      Overrides:
      getFactory in class com.fasterxml.jackson.databind.ObjectMapper
    • configure

      public com.fasterxml.jackson.databind.ObjectMapper configure(ToXmlGenerator.Feature f, boolean state)
    • configure

      public com.fasterxml.jackson.databind.ObjectMapper configure(FromXmlParser.Feature f, boolean state)
    • enable

      public com.fasterxml.jackson.databind.ObjectMapper enable(ToXmlGenerator.Feature f)
    • enable

      public com.fasterxml.jackson.databind.ObjectMapper enable(FromXmlParser.Feature f)
    • disable

      public com.fasterxml.jackson.databind.ObjectMapper disable(ToXmlGenerator.Feature f)
    • disable

      public com.fasterxml.jackson.databind.ObjectMapper disable(FromXmlParser.Feature f)
    • readValue

      public <T> T readValue(XMLStreamReader r, Class<T> valueType) throws IOException
      Method for reading a single XML value from given XML-specific input source; useful for incremental data-binding, combining traversal using basic Stax XMLStreamReader with data-binding by Jackson.
      Throws:
      IOException
      Since:
      2.4
    • readValue

      public <T> T readValue(XMLStreamReader r, com.fasterxml.jackson.core.type.TypeReference<T> valueTypeRef) throws IOException
      Method for reading a single XML value from given XML-specific input source; useful for incremental data-binding, combining traversal using basic Stax XMLStreamReader with data-binding by Jackson.
      Throws:
      IOException
      Since:
      2.4
    • readValue

      public <T> T readValue(XMLStreamReader r, com.fasterxml.jackson.databind.JavaType valueType) throws IOException
      Method for reading a single XML value from given XML-specific input source; useful for incremental data-binding, combining traversal using basic Stax XMLStreamReader with data-binding by Jackson.
      Throws:
      IOException
      Since:
      2.4
    • writeValue

      public void writeValue(XMLStreamWriter w0, Object value) throws IOException
      Method for serializing given value using specific XMLStreamReader: useful when building large XML files by binding individual items, one at a time.
      Throws:
      IOException
      Since:
      2.4