Class XmlUtil


  • public class XmlUtil
    extends java.lang.Object
    Utilities for working with JAXP and SAX.
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  XmlUtil.JstlEntityResolver
      JSTL-specific implementation of EntityResolver, used by parsers.
      static class  XmlUtil.JstlUriResolver
      JSTL-specific implementation of URIResolver, used by transformers.
    • Constructor Summary

      Constructors 
      Constructor Description
      XmlUtil()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static javax.xml.parsers.DocumentBuilder newDocumentBuilder()
      Create a new DocumentBuilder configured for namespaces but not validating.
      static org.w3c.dom.Document newEmptyDocument()
      Create a new empty document.
      static org.xml.sax.InputSource newInputSource​(java.io.Reader reader, java.lang.String systemId)
      Create an InputSource from a Reader.
      static javax.xml.transform.sax.SAXSource newSAXSource​(java.io.Reader reader, java.lang.String systemId, XmlUtil.JstlEntityResolver entityResolver)
      Create a SAXSource from a Reader.
      static javax.xml.transform.Transformer newTransformer​(javax.xml.transform.Source source)
      Create a new Transformer from an XSLT.
      static javax.xml.transform.sax.TransformerHandler newTransformerHandler()
      Create a new TransformerHandler.
      static org.xml.sax.XMLReader newXMLReader​(XmlUtil.JstlEntityResolver entityResolver)
      Create an XMLReader that resolves entities using JSTL semantics.
      • Methods inherited from class java.lang.Object

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

      • XmlUtil

        public XmlUtil()
    • Method Detail

      • newEmptyDocument

        public static org.w3c.dom.Document newEmptyDocument()
        Create a new empty document.
        Returns:
        a new empty document
      • newDocumentBuilder

        public static javax.xml.parsers.DocumentBuilder newDocumentBuilder()
        Create a new DocumentBuilder configured for namespaces but not validating.
        Returns:
        a new, configured DocumentBuilder
      • newTransformerHandler

        public static javax.xml.transform.sax.TransformerHandler newTransformerHandler()
                                                                                throws javax.xml.transform.TransformerConfigurationException
        Create a new TransformerHandler.
        Returns:
        a new TransformerHandler
        Throws:
        javax.xml.transform.TransformerConfigurationException
      • newTransformer

        public static javax.xml.transform.Transformer newTransformer​(javax.xml.transform.Source source)
                                                              throws javax.xml.transform.TransformerConfigurationException
        Create a new Transformer from an XSLT.
        Parameters:
        source - the source of the XSLT.
        Returns:
        a new Transformer
        Throws:
        javax.xml.transform.TransformerConfigurationException - if there was a problem creating the Transformer from the XSLT
      • newInputSource

        public static org.xml.sax.InputSource newInputSource​(java.io.Reader reader,
                                                             java.lang.String systemId)
        Create an InputSource from a Reader. The systemId will be wrapped for use with JSTL's EntityResolver and UriResolver.
        Parameters:
        reader - the source of the XML
        systemId - the system id
        Returns:
        a configured InputSource
      • newXMLReader

        public static org.xml.sax.XMLReader newXMLReader​(XmlUtil.JstlEntityResolver entityResolver)
                                                  throws javax.xml.parsers.ParserConfigurationException,
                                                         org.xml.sax.SAXException
        Create an XMLReader that resolves entities using JSTL semantics.
        Parameters:
        entityResolver - for resolving using JSTL semantics
        Returns:
        a new XMLReader
        Throws:
        javax.xml.parsers.ParserConfigurationException - if there was a configuration problem creating the reader
        org.xml.sax.SAXException - if there was a problem creating the reader
      • newSAXSource

        public static javax.xml.transform.sax.SAXSource newSAXSource​(java.io.Reader reader,
                                                                     java.lang.String systemId,
                                                                     XmlUtil.JstlEntityResolver entityResolver)
                                                              throws javax.xml.parsers.ParserConfigurationException,
                                                                     org.xml.sax.SAXException
        Create a SAXSource from a Reader. Any entities will be resolved using JSTL semantics.
        Parameters:
        reader - the source of the XML
        systemId - the system id
        entityResolver - for resolving using JSTL semamtics
        Returns:
        a new SAXSource
        Throws:
        javax.xml.parsers.ParserConfigurationException - if there was a configuration problem creating the source
        org.xml.sax.SAXException - if there was a problem creating the source