- java.lang.Object
-
- org.xml.sax.HandlerBase
-
- All Implemented Interfaces:
-
DocumentHandler
,DTDHandler
,EntityResolver
,ErrorHandler
已过时。此类与已弃用的DocumentHandler
接口配合使用。 它已被SAX2DefaultHandler
类所取代。
public class HandlerBase extends Object implements EntityResolver, DTDHandler, DocumentHandler, 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.
该类实现了四个SAX1接口的默认行为:EntityResolver,DTDHandler,DocumentHandler和ErrorHandler。 现在已经过时了,但包含在SAX2中,以支持传统的SAX1应用程序。 SAX2应用程序应该使用
DefaultHandler
类。应用程序编写者可以在需要仅实现部分接口时扩展此类; 解析器作者可以实例化这个类,以便在应用程序没有提供自己的时候提供默认处理程序。
请注意,此类的使用是可选的。
- 从以下版本开始:
- 1.4,SAX 1.0
- 另请参见:
-
EntityResolver
,DTDHandler
,DocumentHandler
,ErrorHandler
-
-
构造方法摘要
构造方法 Constructor 描述 HandlerBase()
已过时。
-
方法摘要
所有方法 接口方法 具体的方法 弃用的方法 Modifier and Type 方法 描述 void
characters(char[] ch, int start, int length)
已过时。接收元素内的字符数据通知。void
endDocument()
已过时。接收文件结尾的通知。void
endElement(String name)
已过时。接收元素结尾的通知。void
error(SAXParseException e)
已过时。接收可解析解析器错误的通知。void
fatalError(SAXParseException e)
已过时。报告致命的XML解析错误。void
ignorableWhitespace(char[] ch, int start, int length)
已过时。在元素内容中接收到可忽略的空白的通知。void
notationDecl(String name, String publicId, String systemId)
已过时。接收符号声明的通知。void
processingInstruction(String target, String data)
已过时。接收处理指令的通知。InputSource
resolveEntity(String publicId, String systemId)
已过时。解决外部实体。void
setDocumentLocator(Locator locator)
已过时。接收文档事件的Locator对象。void
startDocument()
已过时。接收文件开头的通知。void
startElement(String name, AttributeList attributes)
已过时。接收元素开始的通知。void
unparsedEntityDecl(String name, String publicId, String systemId, String notationName)
已过时。收到未分类实体声明的通知。void
warning(SAXParseException e)
已过时。接收解析器警告的通知。
-
-
-
方法详细信息
-
resolveEntity
public InputSource resolveEntity(String publicId, String systemId) throws SAXException
已过时。解决外部实体。始终返回null,以便解析器将使用XML文档中提供的系统标识符。 此方法实现SAX默认行为:应用程序编写者可以在子类中覆盖它,以执行特殊翻译,如目录查找或URI重定向。
- Specified by:
-
resolveEntity
在接口EntityResolver
- 参数
-
publicId
- 公共标识符,如果没有可用,则为null。 -
systemId
- XML文档中提供的系统标识符。 - 结果
- 新的输入源,或null,以要求默认行为。
- 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
EntityResolver.resolveEntity(java.lang.String, java.lang.String)
-
notationDecl
public void notationDecl(String name, String publicId, String systemId)
已过时。接收符号声明的通知。默认情况下,什么也不做。 如果应用程序编写者希望跟踪文档中声明的符号,则可以在子类中覆盖此方法。
- Specified by:
-
notationDecl
在接口DTDHandler
- 参数
-
name
- 符号名称。 -
publicId
- 符号公共标识符,如果不可用,则为null。 -
systemId
- 符号系统标识符。 - 另请参见:
-
DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)
-
unparsedEntityDecl
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName)
已过时。收到未分类实体声明的通知。默认情况下,什么也不做。 应用程序编写者可以在子类中覆盖此方法,以跟踪在文档中声明的未解析的实体。
- Specified by:
-
unparsedEntityDecl
在接口DTDHandler
- 参数
-
name
- 实体名称。 -
publicId
- 实体公共标识符,如果不可用,则为null。 -
systemId
- 实体系统标识符。 -
notationName
- 关联符号的名称。 - 另请参见:
-
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
-
setDocumentLocator
public void setDocumentLocator(Locator locator)
已过时。接收文档事件的Locator对象。默认情况下,什么也不做。 如果应用程序编写者希望存储与其他文档事件一起使用的定位器,则可以在子类中覆盖此方法。
- Specified by:
-
setDocumentLocator
在接口DocumentHandler
- 参数
-
locator
- 所有SAX文档事件的定位器。 - 另请参见:
-
DocumentHandler.setDocumentLocator(org.xml.sax.Locator)
,Locator
-
startDocument
public void startDocument() throws SAXException
已过时。接收文件开头的通知。默认情况下,什么也不做。 应用程序编写者可以在子类中覆盖此方法,以在文档的开头执行特定操作(例如分配树的根节点或创建输出文件)。
- Specified by:
-
startDocument
在接口DocumentHandler
- 异常
-
SAXException
- 任何SAX异常,可能包含另一个异常。 - 另请参见:
-
DocumentHandler.startDocument()
-
endDocument
public void endDocument() throws SAXException
已过时。接收文件结尾的通知。默认情况下,什么也不做。 应用程序编写者可以在子类中覆盖此方法,以在文档的末尾执行特定操作(例如,完成树或关闭输出文件)。
- Specified by:
-
endDocument
在接口DocumentHandler
- 异常
-
SAXException
- 任何SAX异常,可能包含另一个异常。 - 另请参见:
-
DocumentHandler.endDocument()
-
startElement
public void startElement(String name, AttributeList attributes) throws SAXException
已过时。接收元素开始的通知。默认情况下,什么也不做。 应用程序编写者可以在子类中覆盖此方法,以在每个元素的开始处采取特定的操作(例如分配新的树节点或将输出写入文件)。
- Specified by:
-
startElement
在接口DocumentHandler
- 参数
-
name
- 元素类型名称。 -
attributes
- 指定或默认的属性。 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
DocumentHandler.startElement(java.lang.String, org.xml.sax.AttributeList)
-
endElement
public void endElement(String name) throws SAXException
已过时。接收元素结尾的通知。默认情况下,什么也不做。 应用程序编写者可以在子类中覆盖此方法,以在每个元素的末尾执行特定操作(例如,完成树节点或将输出写入文件)。
- Specified by:
-
endElement
在接口DocumentHandler
- 参数
-
name
- 元素名称 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
DocumentHandler.endElement(java.lang.String)
-
characters
public void characters(char[] ch, int start, int length) throws SAXException
已过时。接收元素内的字符数据通知。默认情况下,什么也不做。 应用程序编写者可以覆盖此方法以对每个字符数据块采取特定操作(例如将数据添加到节点或缓冲区,或将其打印到文件中)。
- Specified by:
-
characters
在接口DocumentHandler
- 参数
-
ch
- 字符。 -
start
- 字符数组中的起始位置。 -
length
- 从字符数组使用的字符数。 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
DocumentHandler.characters(char[], int, int)
-
ignorableWhitespace
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
已过时。在元素内容中接收到可忽略的空白的通知。默认情况下,什么也不做。 应用程序编写者可以覆盖此方法以针对每个可忽略的空白块(例如将数据添加到节点或缓冲区,或将其打印到文件)采取特定的操作。
- Specified by:
-
ignorableWhitespace
在接口DocumentHandler
- 参数
-
ch
- 空格字符。 -
start
- 字符数组中的起始位置。 -
length
- 要从字符数组使用的字符数。 - 异常
-
SAXException
- 任何SAX异常,可能包含另一个异常。 - 另请参见:
-
DocumentHandler.ignorableWhitespace(char[], int, int)
-
processingInstruction
public void processingInstruction(String target, String data) throws SAXException
已过时。接收处理指令的通知。默认情况下,什么也不做。 应用程序编写者可以在子类中覆盖此方法,以针对每个处理指令执行特定操作,例如设置状态变量或调用其他方法。
- Specified by:
-
processingInstruction
在接口DocumentHandler
- 参数
-
target
- 处理指令目标。 -
data
- 处理指令数据,如果没有提供,则为null。 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
DocumentHandler.processingInstruction(java.lang.String, java.lang.String)
-
warning
public void warning(SAXParseException e) throws SAXException
已过时。接收解析器警告的通知。默认实现什么都不做。 应用程序编写者可以在子类中覆盖此方法,以针对每个警告采取特定操作,例如将消息插入到日志文件中或将其打印到控制台。
- Specified by:
-
warning
在接口ErrorHandler
- 参数
-
e
- 作为异常编码的警告信息。 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
ErrorHandler.warning(org.xml.sax.SAXParseException)
,SAXParseException
-
error
public void error(SAXParseException e) throws SAXException
已过时。接收可解析解析器错误的通知。默认实现什么都不做。 应用程序编写者可以在子类中覆盖此方法,以针对每个错误采取特定操作,例如将消息插入日志文件或将其打印到控制台。
- Specified by:
-
error
在接口ErrorHandler
- 参数
-
e
- 作为异常编码的警告信息。 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
ErrorHandler.warning(org.xml.sax.SAXParseException)
,SAXParseException
-
fatalError
public void fatalError(SAXParseException e) throws SAXException
已过时。报告致命的XML解析错误。默认实现会引发SAXParseException。 如果需要为每个致命错误(例如将所有错误收集到单个报告中)采取特定操作,则应用程序编写者可以在子类中覆盖此方法:在任何情况下,应用程序必须在调用此方法时停止所有常规处理,因为文档不再可靠,并且解析器可能不再报告解析事件。
- Specified by:
-
fatalError
在接口ErrorHandler
- 参数
-
e
- 将错误信息编码为异常。 - 异常
-
SAXException
- 任何SAX异常,可能包装另一个异常。 - 另请参见:
-
ErrorHandler.fatalError(org.xml.sax.SAXParseException)
,SAXParseException
-
-