The signature for method transform of Transformer is void transform(Source xmlSource,Result outputTarget)throws TransformerException i.e. specifies t开发者_开发问答hat it
throws a checked exception of type TransformerException.
ErrorListener fits in.
If an ErrorListener is set to Transform object does this mean that the exception will not be thrown?
If it is thrown anyway how is an ErrorListener useful?
Thanks
If ErrorListener is not set, the error/warning message will go to System.err, so it is useful to redirect error messages. It is up to application to decide should it continue transformation, if an error/warning occured. If the appropriate method in ErrorListener throws an exception, the transformation will exit with TransformerException. On fatalError transformation will be stopped, even if ErrorListener::fatalError doesn't throw an exception.
Update Summary
TransformerExceptionis thrown, when a fatal error occurs, and this doesn't depend onErrorListeneror whether it is set or not.TransformerExceptionis thrown, when a recoverable error or a warning occurs, theErrorListeneris set, and the corresponding method (errororwarning) has thrown an exception. So the application can decide what to do on rec. errors and warnings.
加载中,请稍侯......
精彩评论