2

方法transform 的签名Transformervoid transform(Source xmlSource,Result outputTarget)throws TransformerExceptionie 指定它抛出一个TransformerException 类型的检查异常。
我无法理解如何ErrorListener适应。
如果将 anErrorListener设置为Transformobject 这是否意味着不会引发异常?
如果无论如何抛出它,ErrorListener 有什么用处?

谢谢

4

1 回答 1

1

如果ErrorListener未设置,则错误/警告消息将转到System.err,因此重定向错误消息很有用。如果发生错误/警告,由应用程序决定是否继续转换。如果 中的适当方法ErrorListener引发异常,则转换将以 退出TransformerExceptionfatalError即使ErrorListener::fatalError没有抛出异常,也会停止转换。

更新摘要

  1. TransformerException当发生致命错误时抛出,这不依赖于ErrorListener或是否设置。

  2. TransformerException被抛出,当发生可恢复的错误或警告时,ErrorListener被设置,并且对应的方法(errorwarning)已经抛出异常。所以应用程序可以决定在rec上做什么。错误和警告。

于 2010-11-24T12:33:41.100 回答