@ConfigurableContext public class XmlSerializer extends WriterSerializer implements XmlMetaProvider, XmlCommon
Produces
JsonSerializer
class for details on how Java models map to JSON.
For example, the following JSON...
{
name:
...maps to the following XML using the default serializer...
An additional "add-json-properties" mode is also provided to prevent loss of JSON data types...
This serializer provides several serialization options.
Typically, one of the predefined
If an attribute name contains any non-valid XML element characters, they will be escaped using standard
_x####_
notation.
XmlSerializer.Sq
- Default serializer, single quotes.
XmlSerializer.SqReadable
- Default serializer, single quotes, whitespace added.
Modifier and Type | Class and Description |
---|---|
static class |
XmlSerializer.Ns
Default serializer without namespaces.
|
static class |
XmlSerializer.NsSq
Default serializer without namespaces, single quotes.
|
static class |
XmlSerializer.NsSqReadable
Default serializer without namespaces, single quotes, with whitespace.
|
static class |
XmlSerializer.Sq
Default serializer, single quotes.
|
static class |
XmlSerializer.SqReadable
Default serializer, single quotes, whitespace added.
|
Serializer.Null
Modifier and Type | Field and Description |
---|---|
static XmlSerializer |
DEFAULT
Default serializer without namespaces.
|
protected static Namespace |
DEFAULT_JUNEAU_NAMESPACE |
static XmlSerializer |
DEFAULT_NS
Default serializer, all default settings.
|
static XmlSerializer |
DEFAULT_NS_SQ
Default serializer, single quotes.
|
static XmlSerializer |
DEFAULT_NS_SQ_READABLE
Default serializer, single quotes, whitespace added.
|
static XmlSerializer |
DEFAULT_SQ
Default serializer without namespaces, with single quotes.
|
static XmlSerializer |
DEFAULT_SQ_READABLE
Default serializer without namespaces, with single quotes, whitespace added.
|
protected static Namespace |
DEFAULT_XS_NAMESPACE |
static String |
XML_addBeanTypes
Configuration property: Add
|
static String |
XML_addNamespaceUrisToRoot
Configuration property: Add namespace URLs to the root element.
|
static String |
XML_autoDetectNamespaces
Configuration property: Auto-detect namespace usage.
|
static String |
XML_defaultNamespace
Configuration property: Default namespace.
|
static String |
XML_enableNamespaces
Configuration property: Enable support for XML namespaces.
|
static String |
XML_namespaces
Configuration property: Default namespaces.
|
static String |
XML_xsNamespace
Deprecated.
|
WSERIALIZER_fileCharset, WSERIALIZER_maxIndent, WSERIALIZER_quoteChar, WSERIALIZER_streamCharset, WSERIALIZER_useWhitespace
SERIALIZER_addBeanTypes, SERIALIZER_addRootType, SERIALIZER_keepNullProperties, SERIALIZER_listener, SERIALIZER_sortCollections, SERIALIZER_sortMaps, SERIALIZER_trimEmptyCollections, SERIALIZER_trimEmptyMaps, SERIALIZER_trimNullProperties, SERIALIZER_trimStrings, SERIALIZER_uriContext, SERIALIZER_uriRelativity, SERIALIZER_uriResolution
BEANTRAVERSE_detectRecursions, BEANTRAVERSE_ignoreRecursions, BEANTRAVERSE_initialDepth, BEANTRAVERSE_maxDepth
BEAN_annotations, BEAN_beanClassVisibility, BEAN_beanConstructorVisibility, BEAN_beanDictionary, BEAN_beanDictionary_add, BEAN_beanDictionary_remove, BEAN_beanFieldVisibility, BEAN_beanFilters, BEAN_beanFilters_add, BEAN_beanFilters_remove, BEAN_beanMapPutReturnsOldValue, BEAN_beanMethodVisibility, BEAN_beansRequireDefaultConstructor, BEAN_beansRequireSerializable, BEAN_beansRequireSettersForGetters, BEAN_beansRequireSomeProperties, BEAN_bpi, BEAN_bpro, BEAN_bpwo, BEAN_bpx, BEAN_examples, BEAN_excludeProperties, BEAN_fluentSetters, BEAN_ignoreInvocationExceptionsOnGetters, BEAN_ignoreInvocationExceptionsOnSetters, BEAN_ignorePropertiesWithoutSetters, BEAN_ignoreTransientFields, BEAN_ignoreUnknownBeanProperties, BEAN_ignoreUnknownNullBeanProperties, BEAN_implClasses, BEAN_includeProperties, BEAN_notBeanClasses, BEAN_notBeanClasses_add, BEAN_notBeanClasses_remove, BEAN_notBeanPackages, BEAN_notBeanPackages_add, BEAN_notBeanPackages_remove, BEAN_pojoSwaps, BEAN_pojoSwaps_add, BEAN_pojoSwaps_remove, BEAN_propertyNamer, BEAN_sortProperties, BEAN_swaps, BEAN_swaps_add, BEAN_swaps_remove, BEAN_typePropertyName, BEAN_useEnumNames, BEAN_useInterfaceProxies, BEAN_useJavaBeanIntrospector, DEFAULT_SORTED
CONTEXT_debug, CONTEXT_locale, CONTEXT_mediaType, CONTEXT_timeZone
Constructor and Description |
---|
XmlSerializer(PropertyStore ps)
Constructor.
|
XmlSerializer(PropertyStore ps,
String produces,
String accept)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
XmlSerializerBuilder |
builder()
Creates a builder from this context object.
|
static XmlSerializerBuilder |
create()
Instantiates a new clean-slate
XmlSerializerBuilder object. |
XmlSerializerSession |
createSession()
Create a new bean session based on the properties defined on this context.
|
XmlSerializerSession |
createSession(SerializerSessionArgs args)
Create the session object used for actual serialization of objects.
|
protected Namespace |
getDefaultNamespace()
Default namespace.
|
protected Namespace[] |
getNamespaces()
Default namespaces.
|
XmlSerializer |
getSchemaSerializer()
Deprecated.
|
XmlBeanMeta |
getXmlBeanMeta(BeanMeta<?> bm)
Returns the language-specific metadata on the specified bean.
|
XmlBeanPropertyMeta |
getXmlBeanPropertyMeta(BeanPropertyMeta bpm)
Returns the language-specific metadata on the specified bean property.
|
XmlClassMeta |
getXmlClassMeta(ClassMeta<?> cm)
Returns the language-specific metadata on the specified class.
|
protected Namespace |
getXsNamespace()
Deprecated.
|
protected boolean |
isAddBeanTypes()
Add
|
protected boolean |
isAddNamespaceUrlsToRoot()
Add namespace URLs to the root element.
|
protected boolean |
isAutoDetectNamespaces()
Auto-detect namespace usage.
|
protected boolean |
isEnableNamespaces()
Enable support for XML namespaces.
|
OMap |
toMap()
Returns the properties defined on this bean context as a simple map for debugging purposes.
|
getFileCharset, getMaxIndent, getQuoteChar, getStreamCharset, isUseWhitespace, isWriterSerializer, println, serialize, toString, toStringObject
createDefaultSessionArgs, getAcceptMediaTypes, getListener, getMediaTypeRanges, getPrimaryMediaType, getResponseContentType, getUriContext, getUriRelativity, getUriResolution, isAddRootType, isKeepNullProperties, isSortCollections, isSortMaps, isTrimEmptyCollections, isTrimEmptyMaps, isTrimStrings, serialize, serializeToString
createSession, getInitialDepth, getMaxDepth, isDetectRecursions, isIgnoreRecursions
_class, createBeanSession, createBeanSession, createDefaultBeanSessionArgs, createSession, dumpCacheStats, getAnnotations, getAnnotations, getAnnotations, getAnnotations, getAnnotations, getAnnotations, getAnnotations, getAnnotations, getBeanClassVisibility, getBeanConstructorVisibility, getBeanDictionaryClasses, getBeanFieldVisibility, getBeanFilters, getBeanMeta, getBeanMethodVisibility, getBeanRegistry, getBeanToStringSerializer, getBeanTypePropertyName, getBpi, getBpi, getBpro, getBpro, getBpwo, getBpwo, getBpx, getBpx, getClassMeta, getClassMeta, getClassMetaForObject, getDeclaredAnnotations, getDeclaredAnnotations, getExamples, getImplClassConstructor, getImplClasses, getLastAnnotation, getLastAnnotation, getLastAnnotation, getLastAnnotation, getLastAnnotation, getLastAnnotation, getLastAnnotation, getLastAnnotation, getLastDeclaredAnnotation, getLastDeclaredAnnotation, getNotBeanClasses, getNotBeanPackagesNames, getNotBeanPackagesPrefixes, getPropertyNamer, getSwaps, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasSameCache, isBean, isBeanMapPutReturnsOldValue, isBeansRequireDefaultConstructor, isBeansRequireSerializable, isBeansRequireSettersForGetters, isBeansRequireSomeProperties, isFluentSetters, isIgnoreInvocationExceptionsOnGetters, isIgnoreInvocationExceptionsOnSetters, isIgnorePropertiesWithoutSetters, isIgnoreTransientFields, isIgnoreUnknownBeanProperties, isIgnoreUnknownNullBeanProperties, isNotABean, isSortProperties, isUseEnumNames, isUseInterfaceProxies, isUseJavaBeanIntrospector, object, resolveClassMeta, string
equals, getArrayProperty, getArrayProperty, getBooleanProperty, getCdlProperty, getClassArrayProperty, getClassArrayProperty, getClassArrayProperty, getClassListProperty, getClassListProperty, getClassMapProperty, getClassMapProperty, getClassProperty, getClassSetProperty, getClassSetProperty, getDefaultLocale, getDefaultMediaType, getDefaultTimeZone, getInstanceArrayProperty, getInstanceArrayProperty, getInstanceArrayProperty, getInstanceProperty, getInstanceProperty, getInstanceProperty, getIntegerProperty, getListProperty, getListProperty, getLongProperty, getMapProperty, getProperty, getProperty, getPropertyKeys, getPropertyStore, getSetProperty, getSetProperty, getStringProperty, getStringPropertyWithNone, hashCode, identityCode, isDebug, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getAnnotations, getAnnotations, getAnnotations, getAnnotations, getDeclaredAnnotations
public static final String XML_addBeanTypes
XML_addBeanTypes
If
When present, this value overrides the Serializer.SERIALIZER_addBeanTypes
setting and is
provided to customize the behavior of specific serializers in a SerializerGroup
.
public static final String XML_addNamespaceUrisToRoot
XML_addNamespaceUrisToRoot
Use this setting to add xmlns:x
attributes to the root element for the default and all mapped namespaces.
This setting is ignored if XML_enableNamespaces
is not enabled.
public static final String XML_autoDetectNamespaces
XML_autoDetectNamespaces
Detect namespace usage before serialization.
Used in conjunction with XML_addNamespaceUrisToRoot
to reduce the list of namespace URLs appended to the
root element to only those that will be used in the resulting document.
If enabled, then the data structure will first be crawled looking for namespaces that will be encountered before the root element is serialized.
This setting is ignored if XML_enableNamespaces
is not enabled.
XML_namespaces
property.
public static final String XML_defaultNamespace
XML_defaultNamespace
Namespace
Specifies the default namespace URI for this document.
public static final String XML_enableNamespaces
XML_enableNamespaces
If not enabled, XML output will not contain any namespaces regardless of any other settings.
public static final String XML_namespaces
XML_namespaces
Namespace
>The default list of namespaces associated with this serializer.
@Deprecated public static final String XML_xsNamespace
XML_xsNamespace
Namespace
)
Specifies the namespace for the XmlSchemaSerializer
class.
public static final XmlSerializer DEFAULT
public static final XmlSerializer DEFAULT_SQ
public static final XmlSerializer DEFAULT_SQ_READABLE
public static final XmlSerializer DEFAULT_NS
public static final XmlSerializer DEFAULT_NS_SQ
public static final XmlSerializer DEFAULT_NS_SQ_READABLE
protected static final Namespace DEFAULT_JUNEAU_NAMESPACE
protected static final Namespace DEFAULT_XS_NAMESPACE
public XmlSerializer(PropertyStore ps)
ps
- The property store containing all the settings for this object.public XmlSerializer(PropertyStore ps, String produces, String accept)
ps
- The property store containing all the settings for this object.produces
- The media type that this serializer produces.accept
- The accept media types that the serializer can handle.
Can contain meta-characters per the
If empty, then assumes the only media type supported is
For example, if this serializer produces
The accept value can also contain q-values.
public XmlSerializerBuilder builder()
Context
Builders are used to define new contexts (e.g. serializers, parsers) based on existing configurations.
builder
in class Serializer
public static XmlSerializerBuilder create()
XmlSerializerBuilder
object.
This is equivalent to simply calling
.
Note that this method creates a builder initialized to all default settings, whereas builder()
copies
the settings of the object called on.
XmlSerializerBuilder
object.@Deprecated public XmlSerializer getSchemaSerializer()
public XmlSerializerSession createSession()
BeanContext
Use this method for creating sessions if you don't need to override any properties or locale/timezone currently set on this context.
createSession
in class WriterSerializer
public XmlSerializerSession createSession(SerializerSessionArgs args)
Serializer
createSession
in class WriterSerializer
args
- Runtime arguments.
These specify session-level information such as locale and URI context.
It also include session-level properties that override the properties defined on the bean and serializer
contexts.public XmlClassMeta getXmlClassMeta(ClassMeta<?> cm)
XmlMetaProvider
getXmlClassMeta
in interface XmlMetaProvider
cm
- The class to return the metadata on.public XmlBeanMeta getXmlBeanMeta(BeanMeta<?> bm)
XmlMetaProvider
getXmlBeanMeta
in interface XmlMetaProvider
bm
- The bean to return the metadata on.public XmlBeanPropertyMeta getXmlBeanPropertyMeta(BeanPropertyMeta bpm)
XmlMetaProvider
getXmlBeanPropertyMeta
in interface XmlMetaProvider
bpm
- The bean property to return the metadata on.protected boolean isAddBeanTypes()
isAddBeanTypes
in class Serializer
XML_addBeanTypes
protected final boolean isAddNamespaceUrlsToRoot()
xmlns:x
attributes are added to the root element for the default and all mapped namespaces.XML_addNamespaceUrisToRoot
protected final boolean isAutoDetectNamespaces()
XML_autoDetectNamespaces
protected final Namespace getDefaultNamespace()
XML_defaultNamespace
protected final boolean isEnableNamespaces()
XML_enableNamespaces
protected final Namespace[] getNamespaces()
XML_namespaces
@Deprecated protected final Namespace getXsNamespace()
XmlSchemaSerializer
class.XML_xsNamespace
public OMap toMap()
Context
toMap
in class WriterSerializer
Copyright © 2016–2020 The Apache Software Foundation. All rights reserved.