org.springframework.util.xml

Class DomUtils

  • java.lang.Object
    • org.springframework.util.xml.DomUtils


  • public abstract class DomUtils
    extends java.lang.Object
    Convenience methods for working with the DOM API, in particular for working with DOM Nodes and DOM Elements.
    Since:
    1.2
    Author:
    Juergen Hoeller, Rob Harrop, Costin Leau, Arjen Poutsma, Luke Taylor
    See Also:
    Node, Element
    • Constructor Summary

      Constructors 
      Constructor and Description
      DomUtils() 
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method and Description
      static org.xml.sax.ContentHandler createContentHandler(org.w3c.dom.Node node)
      Returns a SAX ContentHandler that transforms callback calls to DOM Nodes.
      static org.w3c.dom.Element getChildElementByTagName(org.w3c.dom.Element ele, java.lang.String childEleName)
      Utility method that returns the first child element identified by its name.
      static java.util.List<org.w3c.dom.Element> getChildElements(org.w3c.dom.Element ele)
      Retrieves all child elements of the given DOM element.
      static java.util.List<org.w3c.dom.Element> getChildElementsByTagName(org.w3c.dom.Element ele, java.lang.String... childEleNames)
      Retrieves all child elements of the given DOM element that match any of the given element names.
      static java.util.List<org.w3c.dom.Element> getChildElementsByTagName(org.w3c.dom.Element ele, java.lang.String childEleName)
      Retrieves all child elements of the given DOM element that match the given element name.
      static java.lang.String getChildElementValueByTagName(org.w3c.dom.Element ele, java.lang.String childEleName)
      Utility method that returns the first child element value identified by its name.
      static java.lang.String getTextValue(org.w3c.dom.Element valueEle)
      Extracts the text value from the given DOM element, ignoring XML comments.
      static boolean nodeNameEquals(org.w3c.dom.Node node, java.lang.String desiredName)
      Namespace-aware equals comparison.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DomUtils

        public DomUtils()
    • Method Detail

      • getChildElementsByTagName

        public static java.util.List<org.w3c.dom.Element> getChildElementsByTagName(org.w3c.dom.Element ele,
                                                                                    java.lang.String... childEleNames)
        Retrieves all child elements of the given DOM element that match any of the given element names. Only looks at the direct child level of the given element; do not go into further depth (in contrast to the DOM API's getElementsByTagName method).
        Parameters:
        ele - the DOM element to analyze
        childEleNames - the child element names to look for
        Returns:
        a List of child org.w3c.dom.Element instances
        See Also:
        Element, Element.getElementsByTagName(java.lang.String)
      • getChildElementsByTagName

        public static java.util.List<org.w3c.dom.Element> getChildElementsByTagName(org.w3c.dom.Element ele,
                                                                                    java.lang.String childEleName)
        Retrieves all child elements of the given DOM element that match the given element name. Only look at the direct child level of the given element; do not go into further depth (in contrast to the DOM API's getElementsByTagName method).
        Parameters:
        ele - the DOM element to analyze
        childEleName - the child element name to look for
        Returns:
        a List of child org.w3c.dom.Element instances
        See Also:
        Element, Element.getElementsByTagName(java.lang.String)
      • getChildElementByTagName

        @Nullable
        public static org.w3c.dom.Element getChildElementByTagName(org.w3c.dom.Element ele,
                                                                             java.lang.String childEleName)
        Utility method that returns the first child element identified by its name.
        Parameters:
        ele - the DOM element to analyze
        childEleName - the child element name to look for
        Returns:
        the org.w3c.dom.Element instance, or null if none found
      • getChildElementValueByTagName

        @Nullable
        public static java.lang.String getChildElementValueByTagName(org.w3c.dom.Element ele,
                                                                               java.lang.String childEleName)
        Utility method that returns the first child element value identified by its name.
        Parameters:
        ele - the DOM element to analyze
        childEleName - the child element name to look for
        Returns:
        the extracted text value, or null if no child element found
      • getChildElements

        public static java.util.List<org.w3c.dom.Element> getChildElements(org.w3c.dom.Element ele)
        Retrieves all child elements of the given DOM element.
        Parameters:
        ele - the DOM element to analyze
        Returns:
        a List of child org.w3c.dom.Element instances
      • getTextValue

        public static java.lang.String getTextValue(org.w3c.dom.Element valueEle)
        Extracts the text value from the given DOM element, ignoring XML comments.

        Appends all CharacterData nodes and EntityReference nodes into a single String value, excluding Comment nodes. Only exposes actual user-specified text, no default values of any kind.

        See Also:
        CharacterData, EntityReference, Comment
      • nodeNameEquals

        public static boolean nodeNameEquals(org.w3c.dom.Node node,
                                             java.lang.String desiredName)
        Namespace-aware equals comparison. Returns true if either Node.getLocalName() or Node.getNodeName() equals desiredName, otherwise returns false.
      • createContentHandler

        public static org.xml.sax.ContentHandler createContentHandler(org.w3c.dom.Node node)
        Returns a SAX ContentHandler that transforms callback calls to DOM Nodes.
        Parameters:
        node - the node to publish events to
        Returns:
        the content handler