@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_xsNamespace
WSERIALIZER_fileCharset, WSERIALIZER_maxIndent, WSERIALIZER_quoteChar, WSERIALIZER_streamCharset, WSERIALIZER_useWhitespace
SERIALIZER_addBeanTypes, SERIALIZER_addRootType, 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_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, isEnableNamespaces
getFileCharset, getMaxIndent, getQuoteChar, getStreamCharset, isUseWhitespace, isWriterSerializer, println, serialize, toString, toStringObject
createDefaultSessionArgs, getAcceptMediaTypes, getListener, getMediaTypeRanges, getPrimaryMediaType, getResponseContentType, getUriContext, getUriRelativity, getUriResolution, isAddRootType, isSortCollections, isSortMaps, isTrimEmptyCollections, isTrimEmptyMaps, isTrimNullProperties, isTrimStrings, serialize, serializeToString
createSession, 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, string
equals, 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, toString
public 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()
Context
Builders are used to define new contexts (e.g. serializers, parsers) based on existing configurations.
builder
in class XmlSerializer
public 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()
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 XmlSerializer
public HtmlSerializerSession createSession(SerializerSessionArgs args)
Serializer
createSession
in class XmlSerializer
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 HtmlSerializer getSchemaSerializer()
XmlSerializer
getSchemaSerializer
in class XmlSerializer
protected final boolean isAddBeanTypes()
isAddBeanTypes
in class XmlSerializer
HTML_addBeanTypes
protected final boolean isAddKeyValueTableHeaders()
HTML_addKeyValueTableHeaders
protected final boolean isDetectLabelParameters()
HTML_detectLabelParameters
protected final boolean isDetectLinksInStrings()
Strings
.HTML_detectLinksInStrings
protected final String getLabelParameter()
HTML_detectLabelParameters
.HTML_labelParameter
protected final AnchorText getUriAnchorText()
<a href ='...'
> text</a>
) in HTML, this setting defines what to set the inner text to.HTML_uriAnchorText
public ObjectMap toMap()
Context
toMap
in class XmlSerializer
Copyright © 2016–2019 The Apache Software Foundation. All rights reserved.