ErrorListener

  • The ErrorListener interface allows developers to implement custom error handling during XML transformations by registering it with a Transformer using setErrorListener.

  • If a custom ErrorListener is not registered, the default behavior reports all errors and warnings to System.err without throwing exceptions.

  • The ErrorListener interface defines three methods: error for recoverable errors, fatalError for non-recoverable errors, and warning for warnings, all accepting a TransformerException as input.

  • While the Transformer is expected to continue processing after receiving error notifications through these methods, it is not obligated to do so after a fatalError call.

  • Applications can choose to throw exceptions based on the type of error or warning received through the ErrorListener methods, enabling more controlled and context-aware error management.

public interface ErrorListener

To provide customized error handling, implement this interface and use the setErrorListener method to register an instance of the implementation with the Transformer. The Transformer then reports all errors and warnings through this interface.

If an application does not register its own custom ErrorListener, the default ErrorListener is used which reports all warnings and errors to System.err and does not throw any Exceptions. Applications are strongly encouraged to register and use ErrorListeners that insure proper behavior for warnings and errors.

For transformation errors, a Transformer must use this interface instead of throwing an Exception: it is up to the application to decide whether to throw an Exception for different types of errors and warnings. Note however that the Transformer is not required to continue with the transformation after a call to fatalError(TransformerException).

Transformers may use this mechanism to report XML parsing errors as well as transformation errors.

Public Method Summary

abstract void
error(TransformerException exception)
Receive notification of a recoverable error.
abstract void
fatalError(TransformerException exception)

Receive notification of a non-recoverable error.

abstract void
warning(TransformerException exception)
Receive notification of a warning.

Public Methods

public abstract void error (TransformerException exception)

Receive notification of a recoverable error.

The transformer must continue to try and provide normal transformation after invoking this method. It should still be possible for the application to process the document through to the end if no other errors are encountered.

Parameters
exception The error information encapsulated in a transformer exception.
Throws
TransformerException if the application chooses to discontinue the transformation.

public abstract void fatalError (TransformerException exception)

Receive notification of a non-recoverable error.

The Transformer must continue to try and provide normal transformation after invoking this method. It should still be possible for the application to process the document through to the end if no other errors are encountered, but there is no guarantee that the output will be useable.

Parameters
exception The error information encapsulated in a TransformerException.
Throws
TransformerException if the application chooses to discontinue the transformation.

public abstract void warning (TransformerException exception)

Receive notification of a warning.

Transformer can use this method to report conditions that are not errors or fatal errors. The default behavior is to take no action.

After invoking this method, the Transformer must continue with the transformation. It should still be possible for the application to process the document through to the end.

Parameters
exception The warning information encapsulated in a transformer exception.
Throws
TransformerException if the application chooses to discontinue the transformation.