Package org.eclipse.jetty.xml
Class XmlParser
- java.lang.Object
-
- org.eclipse.jetty.xml.XmlParser
-
public class XmlParser extends java.lang.Object
XML Parser wrapper. This class wraps any standard JAXP1.1 parser with convieniant error and entity handlers and a mini dom-like document tree.By default, the parser is created as a validating parser only if xerces is present. This can be configured by setting the "org.eclipse.jetty.xml.XmlParser.Validating" system property.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
XmlParser.Attribute
XML Attribute.static class
XmlParser.Node
XML Node.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addContentHandler(java.lang.String trigger, org.xml.sax.ContentHandler observer)
Add a ContentHandler.java.lang.String
getDTD()
javax.xml.parsers.SAXParser
getSAXParser()
java.lang.String
getXpath()
boolean
isValidating()
protected javax.xml.parsers.SAXParserFactory
newSAXParserFactory()
XmlParser.Node
parse(java.io.File file)
Parse File.XmlParser.Node
parse(java.io.InputStream in)
Parse InputStream.XmlParser.Node
parse(java.lang.String url)
Parse String URL.XmlParser.Node
parse(org.xml.sax.InputSource source)
void
redirectEntity(java.lang.String name, java.net.URL entity)
protected org.xml.sax.InputSource
resolveEntity(java.lang.String pid, java.lang.String sid)
void
setValidating(boolean validating)
void
setXpath(java.lang.String xpath)
Set an XPath A very simple subset of xpath is supported to select a partial tree.
-
-
-
Method Detail
-
newSAXParserFactory
protected javax.xml.parsers.SAXParserFactory newSAXParserFactory()
-
setValidating
public void setValidating(boolean validating)
-
isValidating
public boolean isValidating()
-
getSAXParser
public javax.xml.parsers.SAXParser getSAXParser()
-
redirectEntity
public void redirectEntity(java.lang.String name, java.net.URL entity)
-
getXpath
public java.lang.String getXpath()
- Returns:
- Returns the xpath.
-
setXpath
public void setXpath(java.lang.String xpath)
Set an XPath A very simple subset of xpath is supported to select a partial tree. Currently only path like "/node1/nodeA | /node1/nodeB" are supported.- Parameters:
xpath
- The xpath to set.
-
getDTD
public java.lang.String getDTD()
-
addContentHandler
public void addContentHandler(java.lang.String trigger, org.xml.sax.ContentHandler observer)
Add a ContentHandler. Add an additional _content handler that is triggered on a tag name. SAX events are passed to the ContentHandler provided from a matching start element to the corresponding end element. Only a single _content handler can be registered against each tag.- Parameters:
trigger
- Tag local or q name.observer
- SAX ContentHandler
-
parse
public XmlParser.Node parse(org.xml.sax.InputSource source) throws java.io.IOException, org.xml.sax.SAXException
- Throws:
java.io.IOException
org.xml.sax.SAXException
-
parse
public XmlParser.Node parse(java.lang.String url) throws java.io.IOException, org.xml.sax.SAXException
Parse String URL.- Parameters:
url
- the url to the xml to parse- Returns:
- the root node of the xml
- Throws:
java.io.IOException
- if unable to load the xmlorg.xml.sax.SAXException
- if unable to parse the xml
-
parse
public XmlParser.Node parse(java.io.File file) throws java.io.IOException, org.xml.sax.SAXException
Parse File.- Parameters:
file
- the file to the xml to parse- Returns:
- the root node of the xml
- Throws:
java.io.IOException
- if unable to load the xmlorg.xml.sax.SAXException
- if unable to parse the xml
-
parse
public XmlParser.Node parse(java.io.InputStream in) throws java.io.IOException, org.xml.sax.SAXException
Parse InputStream.- Parameters:
in
- the input stream of the xml to parse- Returns:
- the root node of the xml
- Throws:
java.io.IOException
- if unable to load the xmlorg.xml.sax.SAXException
- if unable to parse the xml
-
resolveEntity
protected org.xml.sax.InputSource resolveEntity(java.lang.String pid, java.lang.String sid)
-
-