@ConfigurableContext public class HtmlSerializer extends XmlSerializer
Produces
Maps (e.g. HashMap, TreeMap) and beans are converted to HTML tables with
'key' and 'value' columns.
Collections (e.g. HashSet, LinkedList) and Java arrays are converted
to HTML ordered lists.
Collections of Maps and beans are converted to HTML tables with keys as headers.
This serializer provides several serialization options. Typically, one of the predefined
The HtmlLink annotation can be used on beans to add hyperlinks to the output.
HtmlSerializer.Sq - Default serializer, single quotes.
HtmlSerializer.SqReadable - Default serializer, single quotes, whitespace added.
| Modifier and Type | Class and Description |
|---|---|
static class |
HtmlSerializer.Sq
Default serializer, single quotes.
|
static class |
HtmlSerializer.SqReadable
Default serializer, single quotes, whitespace added.
|
XmlSerializer.Ns, XmlSerializer.NsSq, XmlSerializer.NsSqReadable| Modifier and Type | Field and Description |
|---|---|
static HtmlSerializer |
DEFAULT
Default serializer, all default settings.
|
static HtmlSerializer |
DEFAULT_SQ
Default serializer, single quotes.
|
static HtmlSerializer |
DEFAULT_SQ_READABLE
Default serializer, single quotes, whitespace added.
|
static String |
HTML_addBeanTypes
Configuration property: Add
|
static String |
HTML_addKeyValueTableHeaders
Configuration property: Add key/value headers on bean/map tables.
|
static String |
HTML_detectLabelParameters
Configuration property: Look for link labels in URIs.
|
static String |
HTML_detectLinksInStrings
Configuration property: Look for URLs in
Strings. |
static String |
HTML_labelParameter
Configuration property: Link label parameter name.
|
static String |
HTML_uriAnchorText
Configuration property: Anchor text source.
|
DEFAULT_JUNEAU_NAMESPACE, DEFAULT_NS, DEFAULT_NS_SQ, DEFAULT_NS_SQ_READABLE, DEFAULT_XS_NAMESPACE, XML_addBeanTypes, XML_addNamespaceUrisToRoot, XML_autoDetectNamespaces, XML_defaultNamespace, XML_enableNamespaces, XML_namespaces, XML_xsNamespaceWSERIALIZER_fileCharset, WSERIALIZER_maxIndent, WSERIALIZER_quoteChar, WSERIALIZER_streamCharset, WSERIALIZER_useWhitespaceSERIALIZER_addBeanTypes, SERIALIZER_addRootType, SERIALIZER_listener, SERIALIZER_sortCollections, SERIALIZER_sortMaps, SERIALIZER_trimEmptyCollections, SERIALIZER_trimEmptyMaps, SERIALIZER_trimNullProperties, SERIALIZER_trimStrings, SERIALIZER_uriContext, SERIALIZER_uriRelativity, SERIALIZER_uriResolutionBEANTRAVERSE_detectRecursions, BEANTRAVERSE_ignoreRecursions, BEANTRAVERSE_initialDepth, BEANTRAVERSE_maxDepthBEAN_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_beanTypePropertyName, BEAN_bpi, BEAN_bpro, BEAN_bpwo, BEAN_bpx, BEAN_debug, BEAN_examples, BEAN_excludeProperties, BEAN_fluentSetters, BEAN_ignoreInvocationExceptionsOnGetters, BEAN_ignoreInvocationExceptionsOnSetters, BEAN_ignorePropertiesWithoutSetters, BEAN_ignoreUnknownBeanProperties, BEAN_ignoreUnknownNullBeanProperties, BEAN_implClasses, BEAN_includeProperties, BEAN_locale, BEAN_mediaType, 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_timeZone, BEAN_useEnumNames, BEAN_useInterfaceProxies, BEAN_useJavaBeanIntrospector, DEFAULT_SORTED| Constructor and Description |
|---|
HtmlSerializer(PropertyStore ps)
Constructor.
|
HtmlSerializer(PropertyStore ps,
String produces,
String accept)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
HtmlSerializerBuilder |
builder()
Creates a builder from this context object.
|
static HtmlSerializerBuilder |
create()
Instantiates a new clean-slate
HtmlSerializerBuilder object. |
HtmlSerializerSession |
createSession()
Create a new bean session based on the properties defined on this context.
|
HtmlSerializerSession |
createSession(SerializerSessionArgs args)
Create the session object used for actual serialization of objects.
|
protected String |
getLabelParameter()
Configuration property: Link label parameter name.
|
HtmlSerializer |
getSchemaSerializer()
Returns the schema serializer based on the settings of this serializer.
|
protected AnchorText |
getUriAnchorText()
Configuration property: Anchor text source.
|
protected boolean |
isAddBeanTypes()
Configuration property: Add
|
protected boolean |
isAddKeyValueTableHeaders()
Configuration property: Add key/value headers on bean/map tables.
|
protected boolean |
isDetectLabelParameters()
Configuration property: Look for link labels in URIs.
|
protected boolean |
isDetectLinksInStrings()
Configuration property: Look for URLs in
Strings. |
ObjectMap |
toMap()
Returns the properties defined on this bean context as a simple map for debugging purposes.
|
getDefaultNamespace, getNamespaces, getXsNamespace, isAddNamespaceUrlsToRoot, isAutoDetectNamespaces, isEnableNamespacesgetFileCharset, getMaxIndent, getQuoteChar, getStreamCharset, isUseWhitespace, isWriterSerializer, println, serialize, toString, toStringObjectcreateDefaultSessionArgs, getAcceptMediaTypes, getListener, getMediaTypeRanges, getPrimaryMediaType, getResponseContentType, getUriContext, getUriRelativity, getUriResolution, isAddRootType, isSortCollections, isSortMaps, isTrimEmptyCollections, isTrimEmptyMaps, isTrimNullProperties, isTrimStrings, serialize, serializeToStringcreateSession, getInitialDepth, getMaxDepth, isDetectRecursions, isIgnoreRecursions_class, createBeanSession, createBeanSession, createDefaultBeanSessionArgs, createSession, dumpCacheStats, getBeanClassVisibility, getBeanConstructorVisibility, getBeanDictionaryClasses, getBeanFieldVisibility, getBeanFilters, getBeanMeta, getBeanMethodVisibility, getBeanRegistry, getBeanTypePropertyName, getBpi, getBpi, getBpro, getBpro, getBpwo, getBpwo, getBpx, getBpx, getClassMeta, getClassMeta, getClassMetaForObject, getExamples, getImplClassConstructor, getImplClasses, getLocale, getMediaType, getNotBeanClasses, getNotBeanPackagesNames, getNotBeanPackagesPrefixes, getPojoSwaps, getPropertyNamer, getTimeZone, hasSameCache, isBean, isBeanMapPutReturnsOldValue, isBeansRequireDefaultConstructor, isBeansRequireSerializable, isBeansRequireSettersForGetters, isBeansRequireSomeProperties, isDebug, isFluentSetters, isIgnoreInvocationExceptionsOnGetters, isIgnoreInvocationExceptionsOnSetters, isIgnorePropertiesWithoutSetters, isIgnoreUnknownBeanProperties, isIgnoreUnknownNullBeanProperties, isNotABean, isSortProperties, isUseEnumNames, isUseInterfaceProxies, isUseJavaBeanIntrospector, object, resolveClassMeta, stringequals, getArrayProperty, getArrayProperty, getBooleanProperty, getCdlProperty, getClassArrayProperty, getClassArrayProperty, getClassArrayProperty, getClassListProperty, getClassListProperty, getClassMapProperty, getClassMapProperty, getClassProperty, getClassSetProperty, getClassSetProperty, getInstanceArrayProperty, getInstanceArrayProperty, getInstanceArrayProperty, getInstanceProperty, getInstanceProperty, getInstanceProperty, getIntegerProperty, getListProperty, getListProperty, getLongProperty, getMapProperty, getProperty, getProperty, getPropertyKeys, getPropertyStore, getSetProperty, getSetProperty, getStringProperty, getStringPropertyWithNone, hashCode, identityCode, toStringpublic static final String HTML_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 HTML_addKeyValueTableHeaders
When enabled,
The following shows the difference between the two generated outputs:
|
|
public static final String HTML_detectLinksInStrings
Strings.
If a string looks like a URL (i.e. starts with HTML_uriAnchorText.
The following shows the difference between the two generated outputs:
|
|
public static final String HTML_labelParameter
The parameter name to look for when resolving link labels via HTML_detectLabelParameters.
public static final String HTML_detectLabelParameters
If the URL has a label parameter (e.g.
The parameter name can be changed via the HTML_labelParameter property.
The following shows the difference between the two generated outputs.
Note that they're both hyperlinks, but the anchor text differs:
|
|
public static final String HTML_uriAnchorText
AnchorText)
When creating anchor tags (e.g. ) in HTML, this setting defines what to set the inner text to.
The possible values are:
AnchorText
TO_STRING (default) - Set to whatever is returned by Context.toString() on the object.
PROPERTY_NAME - Set to the bean property name.
URI - Set to the URI value.
LAST_TOKEN - Set to the last token of the URI value.
URI_ANCHOR - Set to the anchor of the URL.
CONTEXT_RELATIVE - Same as TO_STRING but assumes it's a context-relative path.
SERVLET_RELATIVE - Same as TO_STRING but assumes it's a servlet-relative path.
PATH_RELATIVE - Same as TO_STRING but assumes it's a path-relative path.
public static final HtmlSerializer DEFAULT
public static final HtmlSerializer DEFAULT_SQ
public static final HtmlSerializer DEFAULT_SQ_READABLE
public HtmlSerializer(PropertyStore ps)
ps - The property store containing all the settings for this object.public HtmlSerializer(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 HtmlSerializerBuilder builder()
ContextBuilders are used to define new contexts (e.g. serializers, parsers) based on existing configurations.
builder in class XmlSerializerpublic static HtmlSerializerBuilder create()
HtmlSerializerBuilder 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.
HtmlSerializerBuilder object.public HtmlSerializerSession createSession()
BeanContextUse 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 XmlSerializerpublic HtmlSerializerSession createSession(SerializerSessionArgs args)
SerializercreateSession in class XmlSerializerargs - 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 HtmlSerializer getSchemaSerializer()
XmlSerializergetSchemaSerializer in class XmlSerializerprotected final boolean isAddBeanTypes()
isAddBeanTypes in class XmlSerializerHTML_addBeanTypesprotected final boolean isAddKeyValueTableHeaders()
HTML_addKeyValueTableHeadersprotected final boolean isDetectLabelParameters()
HTML_detectLabelParametersprotected final boolean isDetectLinksInStrings()
Strings.HTML_detectLinksInStringsprotected final String getLabelParameter()
HTML_detectLabelParameters.HTML_labelParameterprotected final AnchorText getUriAnchorText()
<a href ='...'
> text</a> ) in HTML, this setting defines what to set the inner text to.HTML_uriAnchorTextpublic ObjectMap toMap()
ContexttoMap in class XmlSerializerCopyright © 2016–2019 The Apache Software Foundation. All rights reserved.