Package org.apache.struts2.result.xslt

# Class StringAdapter

java.lang.Object
org.apache.struts2.result.xslt.AbstractAdapterNode
org.apache.struts2.result.xslt.AbstractAdapterElement
org.apache.struts2.result.xslt.StringAdapter

All Implemented Interfaces:
  `AdapterNode`, `Element`, `Node`

public class StringAdapter extends AbstractAdapterElement

StringAdapter adapts a Java String value to a DOM Element with the specified property name containing the String's text. e.g. a property `String getFoo() { return "My Text!"; }` will appear in the result DOM as: <foo>MyText!</foo>

Subclasses may override the getStringValue() method in order to use StringAdapter as a simplified custom XML adapter for Java types. A subclass can enable XML parsing of the value string via the setParseStringAsXML() method and then override getStringValue() to return a String containing the custom formatted XML.

- ## Field Summary

  ### Fields inherited from interface org.w3c.dom.Node

  `ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StringAdapter()`
  `StringAdapter(AdapterFactory adapterFactory, AdapterNode parent, String propertyName, String value)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected List<Node>`
  `buildChildAdapters()`
  subclasses override to produce their children
  `boolean`
  `getParseStringAsXML()`
  `protected String`
  `getStringValue()`
  Get the object to be adapted as a String value.
  `void`
  `setParseStringAsXML(boolean parseStringAsXML)`
  When set to true the StringAdapter will interpret its String value as containing XML text and parse it to a DOM Element.

  ### Methods inherited from class org.apache.struts2.result.xslt.AbstractAdapterElement

  `buildAttributeAdapters, getAttribute, getAttributeAdapters, getAttributeNode, getAttributeNodeNS, getAttributeNS, getNodeName, getNodeType, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, hasChildNodes, removeAttribute, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setAttributeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS`

  ### Methods inherited from class org.apache.struts2.result.xslt.AbstractAdapterNode

  `appendChild, cloneNode, compareDocumentPosition, getAdapterFactory, getAttributes, getBaseURI, getChildAdapters, getChildAfter, getChildBefore, getChildBeforeOrAfter, getChildNodes, getElementsByTagName, getElementsByTagNameNS, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeValue, getOwnerDocument, getParent, getParentNode, getPrefix, getPreviousSibling, getPropertyName, getPropertyValue, getTextContent, getUserData, hasAttributes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, operationNotSupported, removeChild, replaceChild, setAdapterFactory, setContext, setNodeValue, setParent, setPrefix, setPropertyName, setPropertyValue, setTextContent, setUserData, toString`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.w3c.dom.Element

  `getElementsByTagName, getElementsByTagNameNS`

  ### Methods inherited from interface org.w3c.dom.Node

  `appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData`

- ## Constructor Details

  - ### StringAdapter

    public StringAdapter()

  - ### StringAdapter

    public StringAdapter(AdapterFactory adapterFactory, AdapterNode parent, String propertyName, String value)

- ## Method Details

  - ### getStringValue

    protected String getStringValue()

    Get the object to be adapted as a String value.

    This method can be overridden by subclasses that wish to use StringAdapter as a simplified customizable XML adapter for Java types. A subclass can enable parsing of the value string as containing XML text via the setParseStringAsXML() method and then override getStringValue() to return a String containing the custom formatted XML.

    Returns:
      the string value

  - ### buildChildAdapters

    protected List<Node> buildChildAdapters()
    Description copied from class: `AbstractAdapterNode`
    subclasses override to produce their children
    Overrides:
      `buildChildAdapters` in class `AbstractAdapterNode`
    Returns:
      List of child adapters.

  - ### getParseStringAsXML

    public boolean getParseStringAsXML()
    Returns:
      is this StringAdapter to interpret its string values as containing XML Text?
    See Also:
      - `setParseStringAsXML(boolean)`

  - ### setParseStringAsXML

    public void setParseStringAsXML(boolean parseStringAsXML)
    When set to true the StringAdapter will interpret its String value as containing XML text and parse it to a DOM Element. The new DOM Element will be a child of this String element. (i.e. wrapped in an element of the property name specified for this StringAdapter).
    Parameters:
      `parseStringAsXML` - when set to true the StringAdapter will interpret its String value as containing XML text
    See Also:
      - `getParseStringAsXML()`