public class DefaultHandler extends Object implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler
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 is available as a convenience base class for SAX2 applications: it provides default implementations for all of the callbacks in the four core SAX2 handler classes:
Application writers can extend this class when they need to implement only part of an interface; parser writers can instantiate this class to provide default handlers when the application has not supplied its own.
This class replaces the deprecated SAX1
HandlerBase
class.
EntityResolver
,
DTDHandler
,
ContentHandler
,
ErrorHandler
Constructor and Description |
---|
DefaultHandler() |
Modifier and Type | Method and Description |
---|---|
void |
characters(char[] ch,
int start,
int length)
Receive notification of character data inside an element.
|
void |
endDocument()
Receive notification of the end of the document.
|
void |
endElement(String uri,
String localName,
String qName)
Receive notification of the end of an element.
|
void |
endPrefixMapping(String prefix)
Receive notification of the end of a Namespace mapping.
|
void |
error(SAXParseException e)
Receive notification of a recoverable parser error.
|
void |
fatalError(SAXParseException e)
Report a fatal XML parsing error.
|
void |
ignorableWhitespace(char[] ch,
int start,
int length)
Receive notification of ignorable whitespace in element content.
|
void |
notationDecl(String name,
String publicId,
String systemId)
Receive notification of a notation declaration.
|
void |
processingInstruction(String target,
String data)
Receive notification of a processing instruction.
|
InputSource |
resolveEntity(String publicId,
String systemId)
Resolve an external entity.
|
void |
setDocumentLocator(Locator locator)
Receive a Locator object for document events.
|
void |
skippedEntity(String name)
Receive notification of a skipped entity.
|
void |
startDocument()
Receive notification of the beginning of the document.
|
void |
startElement(String uri,
String localName,
String qName,
Attributes attributes)
Receive notification of the start of an element.
|
void |
startPrefixMapping(String prefix,
String uri)
Receive notification of the start of a Namespace mapping.
|
void |
unparsedEntityDecl(String name,
String publicId,
String systemId,
String notationName)
Receive notification of an unparsed entity declaration.
|
void |
warning(SAXParseException e)
Receive notification of a parser warning.
|
public InputSource resolveEntity(String publicId, String systemId) throws IOException, SAXException
Always return null, so that the parser will use the system identifier provided in the XML document. This method implements the SAX default behaviour: application writers can override it in a subclass to do special translations such as catalog lookups or URI redirection.
resolveEntity
in interface EntityResolver
publicId
- The public identifier, or null if none is
available.systemId
- The system identifier provided in the XML
document.IOException
- If there is an error setting
up the new input source.SAXException
- Any SAX exception, possibly
wrapping another exception.EntityResolver.resolveEntity(java.lang.String, java.lang.String)
public void notationDecl(String name, String publicId, String systemId) throws SAXException
By default, do nothing. Application writers may override this method in a subclass if they wish to keep track of the notations declared in a document.
notationDecl
in interface DTDHandler
name
- The notation name.publicId
- The notation public identifier, or null if not
available.systemId
- The notation system identifier.SAXException
- Any SAX exception, possibly
wrapping another exception.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to keep track of the unparsed entities declared in a document.
unparsedEntityDecl
in interface DTDHandler
name
- The entity name.publicId
- The entity public identifier, or null if not
available.systemId
- The entity system identifier.notationName
- The name of the associated notation.SAXException
- Any SAX exception, possibly
wrapping another exception.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
public void setDocumentLocator(Locator locator)
By default, do nothing. Application writers may override this method in a subclass if they wish to store the locator for use with other document events.
setDocumentLocator
in interface ContentHandler
locator
- A locator for all SAX document events.ContentHandler.setDocumentLocator(org.xml.sax.Locator)
,
Locator
public void startDocument() throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the beginning of a document (such as allocating the root node of a tree or creating an output file).
startDocument
in interface ContentHandler
SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.startDocument()
public void endDocument() throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the end of a document (such as finalising a tree or closing an output file).
endDocument
in interface ContentHandler
SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.endDocument()
public void startPrefixMapping(String prefix, String uri) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the start of each Namespace prefix scope (such as storing the prefix mapping).
startPrefixMapping
in interface ContentHandler
prefix
- The Namespace prefix being declared.uri
- The Namespace URI mapped to the prefix.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)
public void endPrefixMapping(String prefix) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the end of each prefix mapping.
endPrefixMapping
in interface ContentHandler
prefix
- The Namespace prefix being declared.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.endPrefixMapping(java.lang.String)
public void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the start of each element (such as allocating a new tree node or writing output to a file).
startElement
in interface ContentHandler
uri
- The Namespace URI, or the empty string if the
element has no Namespace URI or if Namespace
processing is not being performed.localName
- The local name (without prefix), or the
empty string if Namespace processing is not being
performed.qName
- The qualified name (with prefix), or the
empty string if qualified names are not available.attributes
- The attributes attached to the element. If
there are no attributes, it shall be an empty
Attributes object.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
public void endElement(String uri, String localName, String qName) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the end of each element (such as finalising a tree node or writing output to a file).
endElement
in interface ContentHandler
uri
- The Namespace URI, or the empty string if the
element has no Namespace URI or if Namespace
processing is not being performed.localName
- The local name (without prefix), or the
empty string if Namespace processing is not being
performed.qName
- The qualified name (with prefix), or the
empty string if qualified names are not available.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
public void characters(char[] ch, int start, int length) throws SAXException
By default, do nothing. Application writers may override this method to take specific actions for each chunk of character data (such as adding the data to a node or buffer, or printing it to a file).
characters
in interface ContentHandler
ch
- The characters.start
- The start position in the character array.length
- The number of characters to use from the
character array.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.characters(char[], int, int)
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
By default, do nothing. Application writers may override this method to take specific actions for each chunk of ignorable whitespace (such as adding data to a node or buffer, or printing it to a file).
ignorableWhitespace
in interface ContentHandler
ch
- The whitespace characters.start
- The start position in the character array.length
- The number of characters to use from the
character array.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.ignorableWhitespace(char[], int, int)
public void processingInstruction(String target, String data) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions for each processing instruction, such as setting status variables or invoking other methods.
processingInstruction
in interface ContentHandler
target
- The processing instruction target.data
- The processing instruction data, or null if
none is supplied.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void skippedEntity(String name) throws SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions for each processing instruction, such as setting status variables or invoking other methods.
skippedEntity
in interface ContentHandler
name
- The name of the skipped entity.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void warning(SAXParseException e) throws SAXException
The default implementation does nothing. Application writers may override this method in a subclass to take specific actions for each warning, such as inserting the message in a log file or printing it to the console.
warning
in interface ErrorHandler
e
- The warning information encoded as an exception.SAXException
- Any SAX exception, possibly
wrapping another exception.ErrorHandler.warning(org.xml.sax.SAXParseException)
,
SAXParseException
public void error(SAXParseException e) throws SAXException
The default implementation does nothing. Application writers may override this method in a subclass to take specific actions for each error, such as inserting the message in a log file or printing it to the console.
error
in interface ErrorHandler
e
- The error information encoded as an exception.SAXException
- Any SAX exception, possibly
wrapping another exception.ErrorHandler.warning(org.xml.sax.SAXParseException)
,
SAXParseException
public void fatalError(SAXParseException e) throws SAXException
The default implementation throws a SAXParseException. Application writers may override this method in a subclass if they need to take specific actions for each fatal error (such as collecting all of the errors into a single report): in any case, the application must stop all regular processing when this method is invoked, since the document is no longer reliable, and the parser may no longer report parsing events.
fatalError
in interface ErrorHandler
e
- The error information encoded as an exception.SAXException
- Any SAX exception, possibly
wrapping another exception.ErrorHandler.fatalError(org.xml.sax.SAXParseException)
,
SAXParseException
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.