Module java.xml

Interface ErrorListener


public interface ErrorListener
用于通知调用者在转换过程中发生错误消息的 TransformerFactoryTransformer 使用的监听器接口。ErrorListener 接收三个级别的消息:警告、错误和严重错误,根据它们的严重程度进行分类。每个消息的处理方式如各自的方法中所述。

ErrorListener 实例可以通过 TransformerFactoryTransformerTransformerFactory.setErrorListener(ErrorListener)Transformer.setErrorListener(ErrorListener) 方法注册到 TransformerFactory 或 Transformer 中,以接收由 TransformerFactory 或 Transformer 报告的错误和警告。

当注册了监听器时,TransformerFactoryTransformer 必须使用此接口将所有警告和错误传递给监听器,并让应用程序决定如何处理它们。请注意,TransformerFactoryTransformer 在调用 fatalError(TransformerException exception) 后不需要继续转换。

如果应用程序没有提供监听器,则 TransformerFactoryTransformer 将自行创建一个。默认的 ErrorListener 可能对警告和可恢复错误不采取任何操作,并允许转换继续进行。但是,TransformerFactoryTransformer 在决定无法继续处理时仍可能抛出 TransformerException

API 注意:
建议应用程序注册并使用自己的 ErrorListener 来覆盖默认行为,以确保正确处理警告和错误。
自:
1.4
  • Method Details

    • warning

      void warning(TransformerException exception) throws TransformerException
      接收警告的通知。

      Transformer 可以使用此方法报告不是错误或严重错误的条件。默认行为是不采取任何操作。

      调用此方法后,Transformer 必须继续转换。应用程序仍应能够处理文档直至结束。

      参数:
      exception - 封装在转换器异常中的警告信息。
      抛出:
      TransformerException - 如果应用程序选择终止转换。
      参见:
    • error

      void error(TransformerException exception) throws TransformerException
      接收可恢复错误的通知。

      调用此方法后,转换器必须继续尝试提供正常的转换。如果没有遇到其他错误,应用程序仍应能够处理文档直至结束。

      参数:
      exception - 封装在转换器异常中的错误信息。
      抛出:
      TransformerException - 如果应用程序选择终止转换。
      参见:
    • fatalError

      void fatalError(TransformerException exception) throws TransformerException

      接收不可恢复错误的通知。

      处理器可能选择继续,但通常不会成功完成。

      如果无法处理错误,或者希望立即终止执行,该方法应抛出异常。处理器不一定会遵守此请求。

      参数:
      exception - 封装在 TransformerException 中的错误信息。
      抛出:
      TransformerException - 如果应用程序选择终止转换。
      参见: