Class XmlUtils

java.lang.Object
org.htmlunit.util.XmlUtils

public final class XmlUtils extends Object
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Provides facility method to work with XML responses.
  • Method Details

    • buildDocument

      public static Document buildDocument(WebResponse webResponse) throws IOException, SAXException, ParserConfigurationException
      Builds a document from the content of the web response. A warning is logged if an exception is thrown while parsing the XML content (for instance when the content is not a valid XML and can't be parsed).
      Parameters:
      webResponse - the response from the server
      Returns:
      the parse result
      Throws:
      IOException - if the page could not be created
      SAXException - if the parsing fails
      ParserConfigurationException - if a DocumentBuilder cannot be created
    • appendChild

      public static void appendChild(SgmlPage page, DomNode parent, Node child, boolean handleXHTMLAsHTML)
      Recursively appends a Node child to DomNode parent.
      Parameters:
      page - the owner page of DomElements to be created
      parent - the parent DomNode
      child - the child Node
      handleXHTMLAsHTML - if true elements from the XHTML namespace are handled as HTML elements instead of DOM elements
    • appendChild

      public static void appendChild(SgmlPage page, DomNode parent, Node child, boolean handleXHTMLAsHTML, Map<Integer,List<String>> attributesOrderMap)
      Recursively appends a Node child to DomNode parent.
      Parameters:
      page - the owner page of DomElements to be created
      parent - the parent DomNode
      child - the child Node
      handleXHTMLAsHTML - if true elements from the XHTML namespace are handled as HTML elements instead of DOM elements
      attributesOrderMap - (optional) the one returned by getAttributesOrderMap(Document)
    • lookupNamespaceURI

      public static String lookupNamespaceURI(DomElement element, String prefix)
      Search for the namespace URI of the given prefix, starting from the specified element. The default namespace can be searched for by specifying "" as the prefix.
      Parameters:
      element - the element to start searching from
      prefix - the namespace prefix
      Returns:
      the namespace URI bound to the prefix; or null if there is no such namespace
    • lookupPrefix

      public static String lookupPrefix(DomElement element, String namespace)
      Search for the prefix associated with specified namespace URI.
      Parameters:
      element - the element to start searching from
      namespace - the namespace prefix
      Returns:
      the prefix bound to the namespace URI; or null if there is no such namespace
    • getAttributesOrderMap

      public static Map<Integer,List<String>> getAttributesOrderMap(Document document)
      Returns internal Xerces details about all elements in the specified document. The id of the returned Map is the nodeIndex of an element, and the list is the array of ordered attributes names.
      Parameters:
      document - the document
      Returns:
      the map of an element index with its ordered attribute names