java.lang.Object | +--org.xml.sax.helpers.XMLReaderAdapter
Adapt a SAX2 XMLReader as a SAX1 Parser.
This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.
This class wraps a SAX2 XMLReader
and makes it act as a SAX1 Parser
. The XMLReader
must support a true value for the
http://xml.org/sax/features/namespace-prefixes property or parsing will fail
with a SAXException
; if the XMLReader
supports a false value for the http://xml.org/sax/features/namespaces
property, that will also be used to improve efficiency.
XMLReaderAdapter()
XMLReaderAdapter(XMLReader xmlReader)
void
endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName)
void
processingInstruction(java.lang.String target,
java.lang.String data)
void
startElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName,
Attributes atts)
void
startPrefixMapping(java.lang.String prefix,
java.lang.String uri)
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public XMLReaderAdapter() throws SAXException
Use the "org.xml.sax.driver" property to locate the SAX2 driver to embed.
SAXException
- If the embedded driver
cannot be instantiated or if the
org.xml.sax.driver property is not specified.public XMLReaderAdapter(XMLReader xmlReader)
Create a new adapter, wrapped around a SAX2 XMLReader. The adapter will make the XMLReader act like a SAX1 Parser.
xmlReader
- The SAX2 XMLReader to wrap.
java.lang.NullPointerException
- If the argument is null.public void setLocale(java.util.Locale locale) throws SAXException
This is not supported in SAX2, and will always throw an exception.
locale
- the locale for error reporting.
SAXException
- Thrown unless overridden.Parser.setLocale(java.util.Locale)
public void setEntityResolver(EntityResolver resolver)
setEntityResolver
in interface Parser
resolver
- The new resolver.Parser.setEntityResolver(org.xml.sax.EntityResolver)
public void setDTDHandler(DTDHandler handler)
setDTDHandler
in interface Parser
handler
- The new DTD event handler.Parser.setDTDHandler(org.xml.sax.DTDHandler)
public void setDocumentHandler(DocumentHandler handler)
Note that the SAX1 document handler has no Namespace support.
setDocumentHandler
in interface Parser
handler
- The new SAX1 document event handler.Parser.setDocumentHandler(org.xml.sax.DocumentHandler)
public void setErrorHandler(ErrorHandler handler)
setErrorHandler
in interface Parser
handler
- The new error event handler.Parser.setErrorHandler(org.xml.sax.ErrorHandler)
public void parse(java.lang.String systemId) throws java.io.IOException, SAXException
This method will throw an exception if the embedded XMLReader does not support the http://xml.org/sax/features/namespace-prefixes property.
systemId
- The absolute URL of the document.
java.io.IOException
- If there is a problem reading
the raw content of the document.
SAXException
- If there is a problem
processing the document.parse(org.xml.sax.InputSource)
,
Parser.parse(java.lang.String)
public void parse(InputSource input) throws java.io.IOException, SAXException
This method will throw an exception if the embedded XMLReader does not support the http://xml.org/sax/features/namespace-prefixes property.
input
- An input source for the document.
java.io.IOException
- If there is a problem reading
the raw content of the document.
SAXException
- If there is a problem
processing the document.parse(java.lang.String)
,
Parser.parse(org.xml.sax.InputSource)
public void setDocumentLocator(Locator locator)
setDocumentLocator
in interface ContentHandler
locator
- The document locator.ContentHandler.setDocumentLocator(org.xml.sax.Locator)
public void startDocument() throws SAXException
startDocument
in interface ContentHandler
SAXException
- The client may raise a
processing exception.ContentHandler.startDocument()
public void endDocument() throws SAXException
endDocument
in interface ContentHandler
SAXException
- The client may raise a
processing exception.ContentHandler.endDocument()
public void startPrefixMapping(java.lang.String prefix, java.lang.String uri)
startPrefixMapping
in interface ContentHandler
prefix
- The prefix being mapped.uri
- The Namespace URI being mapped to.ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)
public void endPrefixMapping(java.lang.String prefix)
endPrefixMapping
in interface ContentHandler
prefix
- The prefix being mapped.ContentHandler.endPrefixMapping(java.lang.String)
public void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, Attributes atts) throws SAXException
startElement
in interface ContentHandler
uri
- The Namespace URI.localName
- The Namespace local name.qName
- The qualified (prefixed) name.atts
- The SAX2 attributes.
SAXException
- The client may raise a
processing exception.ContentHandler.endDocument()
public void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName) throws SAXException
endElement
in interface ContentHandler
uri
- The Namespace URI.localName
- The Namespace local name.qName
- The qualified (prefixed) name.
SAXException
- The client may raise a
processing exception.ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
public void characters(char[] ch, int start, int length) throws SAXException
characters
in interface ContentHandler
ch
- An array of characters.start
- The starting position in the array.length
- The number of characters to use.
SAXException
- The client may raise a
processing exception.ContentHandler.characters(char[], int, int)
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
ignorableWhitespace
in interface ContentHandler
ch
- An array of characters.start
- The starting position in the array.length
- The number of characters to use.
SAXException
- The client may raise a
processing exception.ContentHandler.ignorableWhitespace(char[], int, int)
public void processingInstruction(java.lang.String target, java.lang.String data) throws SAXException
processingInstruction
in interface ContentHandler
target
- The processing instruction target.data
- The remainder of the processing instruction
SAXException
- The client may raise a
processing exception.ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void skippedEntity(java.lang.String name) throws SAXException
skippedEntity
in interface ContentHandler
name
- The name of the skipped entity.
SAXException
- Throwable by subclasses.ContentHandler.skippedEntity(java.lang.String)