Class XmlSerializerProvider
- java.lang.Object
-
- com.fasterxml.jackson.databind.DatabindContext
-
- com.fasterxml.jackson.databind.SerializerProvider
-
- com.fasterxml.jackson.databind.ser.DefaultSerializerProvider
-
- com.fasterxml.jackson.dataformat.xml.ser.XmlSerializerProvider
-
- All Implemented Interfaces:
java.io.Serializable
public class XmlSerializerProvider extends com.fasterxml.jackson.databind.ser.DefaultSerializerProvider
We need to override some parts ofSerializerProvider
implementation to handle oddities of XML output, like "extra" root element.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected XmlRootNameLookup
_rootNameLookup
protected static javax.xml.namespace.QName
ROOT_NAME_FOR_NULL
If all we get to serialize is a null, there's no way to figure out expected root name; so let's just default to something like "<null>"...-
Fields inherited from class com.fasterxml.jackson.databind.ser.DefaultSerializerProvider
_generator, _objectIdGenerators, _seenObjectIds
-
Fields inherited from class com.fasterxml.jackson.databind.SerializerProvider
_attributes, _config, _dateFormat, _keySerializer, _knownSerializers, _nullKeySerializer, _nullValueSerializer, _serializationView, _serializerCache, _serializerFactory, _stdNullValueSerializer, _unknownTypeSerializer, CACHE_UNKNOWN_MAPPINGS, DEFAULT_NULL_KEY_SERIALIZER, DEFAULT_UNKNOWN_SERIALIZER
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
XmlSerializerProvider(XmlSerializerProvider src)
XmlSerializerProvider(XmlSerializerProvider src, com.fasterxml.jackson.databind.SerializationConfig config, com.fasterxml.jackson.databind.ser.SerializerFactory f)
XmlSerializerProvider(XmlRootNameLookup rootNames)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ToXmlGenerator
_asXmlGenerator(com.fasterxml.jackson.core.JsonGenerator gen)
protected void
_initWithRootName(ToXmlGenerator xgen, javax.xml.namespace.QName rootName)
protected javax.xml.namespace.QName
_rootNameFromConfig()
protected void
_serializeXmlNull(com.fasterxml.jackson.core.JsonGenerator jgen)
protected void
_startRootArray(ToXmlGenerator xgen, javax.xml.namespace.QName rootName)
protected java.io.IOException
_wrapAsIOE(com.fasterxml.jackson.core.JsonGenerator g, java.lang.Exception e)
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider
copy()
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider
createInstance(com.fasterxml.jackson.databind.SerializationConfig config, com.fasterxml.jackson.databind.ser.SerializerFactory jsf)
void
serializeValue(com.fasterxml.jackson.core.JsonGenerator gen, java.lang.Object value)
void
serializeValue(com.fasterxml.jackson.core.JsonGenerator gen, java.lang.Object value, com.fasterxml.jackson.databind.JavaType rootType, com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser)
-
Methods inherited from class com.fasterxml.jackson.databind.ser.DefaultSerializerProvider
_createObjectIdMap, _serializeNull, acceptJsonFormatVisitor, cachedSerializersCount, findObjectId, flushCachedSerializers, generateJsonSchema, getGenerator, hasSerializerFor, includeFilterInstance, includeFilterSuppressNulls, serializePolymorphic, serializerInstance, serializeValue
-
Methods inherited from class com.fasterxml.jackson.databind.SerializerProvider
_createAndCacheUntypedSerializer, _createAndCacheUntypedSerializer, _createUntypedSerializer, _dateFormat, _findExplicitUntypedSerializer, _handleContextualResolvable, _handleResolvable, _reportIncompatibleRootType, canOverrideAccessModifiers, defaultSerializeDateKey, defaultSerializeDateKey, defaultSerializeDateValue, defaultSerializeDateValue, defaultSerializeField, defaultSerializeNull, defaultSerializeValue, findKeySerializer, findKeySerializer, findNullKeySerializer, findNullValueSerializer, findPrimaryPropertySerializer, findPrimaryPropertySerializer, findTypedValueSerializer, findTypedValueSerializer, findTypeSerializer, findValueSerializer, findValueSerializer, findValueSerializer, findValueSerializer, getActiveView, getAnnotationIntrospector, getAttribute, getConfig, getDefaultNullKeySerializer, getDefaultNullValueSerializer, getDefaultPropertyFormat, getDefaultPropertyInclusion, getFilterProvider, getLocale, getSerializationView, getTimeZone, getTypeFactory, getUnknownTypeSerializer, handlePrimaryContextualization, handleSecondaryContextualization, hasSerializationFeatures, invalidTypeIdException, isEnabled, isEnabled, isUnknownTypeSerializer, mappingException, mappingException, reportBadDefinition, reportBadDefinition, reportBadDefinition, reportBadPropertyDefinition, reportBadTypeDefinition, reportMappingProblem, reportMappingProblem, setAttribute, setDefaultKeySerializer, setNullKeySerializer, setNullValueSerializer
-
Methods inherited from class com.fasterxml.jackson.databind.DatabindContext
_colonConcat, _desc, _format, _quotedString, _throwNotASubtype, _throwSubtypeClassNotAllowed, _throwSubtypeNameNotAllowed, _truncate, constructSpecializedType, constructType, converterInstance, objectIdGeneratorInstance, objectIdResolverInstance, reportBadDefinition, resolveAndValidateSubType, resolveSubType
-
-
-
-
Field Detail
-
ROOT_NAME_FOR_NULL
protected static final javax.xml.namespace.QName ROOT_NAME_FOR_NULL
If all we get to serialize is a null, there's no way to figure out expected root name; so let's just default to something like "<null>"...
-
_rootNameLookup
protected final XmlRootNameLookup _rootNameLookup
-
-
Constructor Detail
-
XmlSerializerProvider
public XmlSerializerProvider(XmlRootNameLookup rootNames)
-
XmlSerializerProvider
public XmlSerializerProvider(XmlSerializerProvider src, com.fasterxml.jackson.databind.SerializationConfig config, com.fasterxml.jackson.databind.ser.SerializerFactory f)
-
XmlSerializerProvider
protected XmlSerializerProvider(XmlSerializerProvider src)
- Since:
- 2.8.9
-
-
Method Detail
-
copy
public com.fasterxml.jackson.databind.ser.DefaultSerializerProvider copy()
- Overrides:
copy
in classcom.fasterxml.jackson.databind.ser.DefaultSerializerProvider
-
createInstance
public com.fasterxml.jackson.databind.ser.DefaultSerializerProvider createInstance(com.fasterxml.jackson.databind.SerializationConfig config, com.fasterxml.jackson.databind.ser.SerializerFactory jsf)
- Specified by:
createInstance
in classcom.fasterxml.jackson.databind.ser.DefaultSerializerProvider
-
serializeValue
public void serializeValue(com.fasterxml.jackson.core.JsonGenerator gen, java.lang.Object value) throws java.io.IOException
- Overrides:
serializeValue
in classcom.fasterxml.jackson.databind.ser.DefaultSerializerProvider
- Throws:
java.io.IOException
-
serializeValue
public void serializeValue(com.fasterxml.jackson.core.JsonGenerator gen, java.lang.Object value, com.fasterxml.jackson.databind.JavaType rootType, com.fasterxml.jackson.databind.JsonSerializer<java.lang.Object> ser) throws java.io.IOException
- Overrides:
serializeValue
in classcom.fasterxml.jackson.databind.ser.DefaultSerializerProvider
- Throws:
java.io.IOException
-
_serializeXmlNull
protected void _serializeXmlNull(com.fasterxml.jackson.core.JsonGenerator jgen) throws java.io.IOException
- Throws:
java.io.IOException
-
_startRootArray
protected void _startRootArray(ToXmlGenerator xgen, javax.xml.namespace.QName rootName) throws java.io.IOException
- Throws:
java.io.IOException
-
_initWithRootName
protected void _initWithRootName(ToXmlGenerator xgen, javax.xml.namespace.QName rootName) throws java.io.IOException
- Throws:
java.io.IOException
-
_rootNameFromConfig
protected javax.xml.namespace.QName _rootNameFromConfig()
-
_asXmlGenerator
protected ToXmlGenerator _asXmlGenerator(com.fasterxml.jackson.core.JsonGenerator gen) throws com.fasterxml.jackson.databind.JsonMappingException
- Throws:
com.fasterxml.jackson.databind.JsonMappingException
-
_wrapAsIOE
protected java.io.IOException _wrapAsIOE(com.fasterxml.jackson.core.JsonGenerator g, java.lang.Exception e)
-
-