public interface ErrorHandler
org.xml.sax.ErrorHandler |
Known Indirect Subclasses |
SAX错误处理程序的基本界面。
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.
如果SAX应用程序需要实现自定义错误处理,则必须实现此接口,然后使用setErrorHandler
方法向XML阅读器注册实例。 解析器会通过这个接口报告所有错误和警告。
警告:如果应用程序没有注册ErrorHandler,则XML解析错误将不会被报告,但SAXParseException将被抛出以用于致命错误。 为了检测有效性错误,必须注册一个与error()
调用有关的ErrorHandler。
对于XML处理错误,SAX驱动程序必须优先使用此接口来引发异常:由应用程序决定是否针对不同类型的错误和警告引发异常。 但请注意,在调用fatalError
之后,解析器不会继续报告其他错误。 换句话说,在报告任何fatalError之后,SAX驱动程序类可能会引发异常。 解析器也可能为非XML错误引发适当的异常。 例如,对于访问实体或文档的错误, XMLReader.parse()
会引发IOException。
Public methods |
|
---|---|
abstract void |
error(SAXParseException exception) 接收可恢复错误的通知。 |
abstract void |
fatalError(SAXParseException exception) 接收不可恢复错误的通知。 |
abstract void |
warning(SAXParseException exception) 接收警告通知。 |
void error (SAXParseException exception)
接收可恢复错误的通知。
这对应于W3C XML 1.0建议书第1.2节中“错误”的定义。 例如,验证解析器将使用此回调来报告违反有效性约束的情况。 默认行为是不采取任何行动。
在调用此方法后,SAX解析器必须继续提供正常的解析事件:应用程序仍然可以处理文档直到最后。 如果应用程序不能这样做,那么解析器应该报告一个致命错误,即使XML建议不要求它这样做。
过滤器也可以使用此方法报告其他非XML错误。
Parameters | |
---|---|
exception |
SAXParseException : The error information encapsulated in a SAX parse exception. |
Throws | |
---|---|
SAXException |
Any SAX exception, possibly wrapping another exception. |
也可以看看:
void fatalError (SAXParseException exception)
接收不可恢复错误的通知。
该方法的文档与endDocument()
的文档之间存在明显的矛盾。 在未来的主要版本中解决这个歧义之前,客户端应该不会假设在解析器报告fatalError()或引发异常时endDocument()是否会被调用。
这对应于W3C XML 1.0 Recommendation第1.2节中“致命错误”的定义。 例如,解析器将使用此回调来报告违反格式良好限制的情况。
应用程序必须假定文档在解析器调用此方法后不可用,并且应该继续(如果有的话)仅用于收集其他错误消息:事实上,SAX解析器可以自由停止报告任何其他事件方法已被调用。
Parameters | |
---|---|
exception |
SAXParseException : The error information encapsulated in a SAX parse exception. |
Throws | |
---|---|
SAXException |
Any SAX exception, possibly wrapping another exception. |
也可以看看:
void warning (SAXParseException exception)
接收警告通知。
SAX解析器将使用此方法来报告XML建议定义的非错误或致命错误的条件。 默认行为是不采取任何行动。
在调用此方法后,SAX解析器必须继续提供正常的解析事件:应用程序仍然可以处理文档直到最后。
过滤器也可以使用此方法报告其他非XML警告。
Parameters | |
---|---|
exception |
SAXParseException : The warning information encapsulated in a SAX parse exception. |
Throws | |
---|---|
SAXException |
Any SAX exception, possibly wrapping another exception. |
也可以看看: