public class

XMLErrorReporter

extends Object
implements XMLComponent
java.lang.Object
   ↳ org.apache.xerces.impl.XMLErrorReporter

Class Overview

This class is a common element of all parser configurations and is used to report errors that occur. This component can be queried by parser components from the component manager using the following property ID:

   http://apache.org/xml/properties/internal/error-reporter
 

Errors are separated into domains that categorize a class of errors. In a parser configuration, the parser would register a MessageFormatter for each domain that is capable of localizing error messages and formatting them based on information about the error. Any parser component can invent new error domains and register additional message formatters to localize messages in those domains.

This component requires the following features and properties from the component manager that uses it:

  • http://apache.org/xml/properties/internal/error-handler

This component can use the following features and properties but they are not required:

  • http://apache.org/xml/features/continue-after-fatal-error
@xerces.internal

See Also

Summary

Constants
String CONTINUE_AFTER_FATAL_ERROR Feature identifier: continue after fatal error.
String ERROR_HANDLER Property identifier: error handler.
short SEVERITY_ERROR Severity: error.
short SEVERITY_FATAL_ERROR Severity: fatal error.
short SEVERITY_WARNING Severity: warning.
Fields
protected boolean fContinueAfterFatalError Continue after fatal error feature.
protected XMLErrorHandler fDefaultErrorHandler Default error handler.
protected XMLErrorHandler fErrorHandler Error handler.
protected Locale fLocale The locale to be used to format error messages.
protected XMLLocator fLocator Document locator.
protected Hashtable fMessageFormatters Mapping of Message formatters for domains.
Public Constructors
XMLErrorReporter()
Constructs an error reporter with a locator.
Public Methods
XMLErrorHandler getErrorHandler()
Get the internal XMLErrrorHandler.
boolean getFeature(String featureId)
Boolean getFeatureDefault(String featureId)
Returns the default state for a feature, or null if this component does not want to report a default value for this feature.
Locale getLocale()
Gets the current locale.
MessageFormatter getMessageFormatter(String domain)
Returns the message formatter associated with the specified domain, or null if no message formatter is registered for that domain.
Object getPropertyDefault(String propertyId)
Returns the default state for a property, or null if this component does not want to report a default value for this property.
String[] getRecognizedFeatures()
Returns a list of feature identifiers that are recognized by this component.
String[] getRecognizedProperties()
Returns a list of property identifiers that are recognized by this component.
ErrorHandler getSAXErrorHandler()
Gets the internal XMLErrorHandler as SAX ErrorHandler.
void putMessageFormatter(String domain, MessageFormatter messageFormatter)
Registers a message formatter for the specified domain.
MessageFormatter removeMessageFormatter(String domain)
Removes the message formatter for the specified domain and returns the removed message formatter.
void reportError(XMLLocator location, String domain, String key, Object[] arguments, short severity)
Reports an error at a specific location.
void reportError(String domain, String key, Object[] arguments, short severity)
Reports an error.
void reset(XMLComponentManager componentManager)
Resets the component.
void setDocumentLocator(XMLLocator locator)
Sets the document locator.
void setFeature(String featureId, boolean state)
Sets the state of a feature.
void setLocale(Locale locale)
Sets the current locale.
void setProperty(String propertyId, Object value)
Sets the value of a property.
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.apache.xerces.xni.parser.XMLComponent

Constants

protected static final String CONTINUE_AFTER_FATAL_ERROR

Feature identifier: continue after fatal error.

Constant Value: "http://apache.org/xml/features/continue-after-fatal-error"

protected static final String ERROR_HANDLER

Property identifier: error handler.

Constant Value: "http://apache.org/xml/properties/internal/error-handler"

public static final short SEVERITY_ERROR

Severity: error. Common causes of errors are document structure and/or content that that does not conform to the grammar rules specified for the document. These are typically validation errors.

Constant Value: 1 (0x00000001)

public static final short SEVERITY_FATAL_ERROR

Severity: fatal error. Fatal errors are errors in the syntax of the XML document or invalid byte sequences for a given encoding. The XML 1.0 Specification mandates that errors of this type are not recoverable.

Note: The parser does have a "continue after fatal error" feature but it should be used with extreme caution and care.

Constant Value: 2 (0x00000002)

public static final short SEVERITY_WARNING

Severity: warning. Warnings represent informational messages only that should not be considered serious enough to stop parsing or indicate an error in the document's validity.

Constant Value: 0 (0x00000000)

Fields

protected boolean fContinueAfterFatalError

Continue after fatal error feature.

protected XMLErrorHandler fDefaultErrorHandler

Default error handler. This error handler is only used in the absence of a registered error handler so that errors are not "swallowed" silently. This is one of the most common "problems" reported by users of the parser.

protected XMLErrorHandler fErrorHandler

Error handler.

protected Locale fLocale

The locale to be used to format error messages.

protected XMLLocator fLocator

Document locator.

protected Hashtable fMessageFormatters

Mapping of Message formatters for domains.

Public Constructors

public XMLErrorReporter ()

Constructs an error reporter with a locator.

Public Methods

public XMLErrorHandler getErrorHandler ()

Get the internal XMLErrrorHandler.

public boolean getFeature (String featureId)

public Boolean getFeatureDefault (String featureId)

Returns the default state for a feature, or null if this component does not want to report a default value for this feature.

Parameters
featureId The feature identifier.

public Locale getLocale ()

Gets the current locale.

Returns
  • the current Locale

public MessageFormatter getMessageFormatter (String domain)

Returns the message formatter associated with the specified domain, or null if no message formatter is registered for that domain.

Parameters
domain The domain of the message formatter.

public Object getPropertyDefault (String propertyId)

Returns the default state for a property, or null if this component does not want to report a default value for this property.

Parameters
propertyId The property identifier.

public String[] getRecognizedFeatures ()

Returns a list of feature identifiers that are recognized by this component. This method may return null if no features are recognized by this component.

public String[] getRecognizedProperties ()

Returns a list of property identifiers that are recognized by this component. This method may return null if no properties are recognized by this component.

public ErrorHandler getSAXErrorHandler ()

Gets the internal XMLErrorHandler as SAX ErrorHandler.

public void putMessageFormatter (String domain, MessageFormatter messageFormatter)

Registers a message formatter for the specified domain.

Note: Registering a message formatter for a domain when there is already a formatter registered will cause the previous formatter to be lost. This method replaces any previously registered message formatter for the specified domain.

public MessageFormatter removeMessageFormatter (String domain)

Removes the message formatter for the specified domain and returns the removed message formatter.

Parameters
domain The domain of the message formatter.

public void reportError (XMLLocator location, String domain, String key, Object[] arguments, short severity)

Reports an error at a specific location.

Parameters
location The error location.
domain The error domain.
key The key of the error message.
arguments The replacement arguments for the error message, if needed.
severity The severity of the error.
Throws
XNIException

public void reportError (String domain, String key, Object[] arguments, short severity)

Reports an error. The error message passed to the error handler is formatted for the locale by the message formatter installed for the specified error domain.

Parameters
domain The error domain.
key The key of the error message.
arguments The replacement arguments for the error message, if needed.
severity The severity of the error.
Throws
XNIException

public void reset (XMLComponentManager componentManager)

Resets the component. The component can query the component manager about any features and properties that affect the operation of the component.

Parameters
componentManager The component manager.
Throws
Thrown by component on initialization error. For example, if a feature or property is required for the operation of the component, the component manager may throw a SAXNotRecognizedException or a SAXNotSupportedException.
XNIException

public void setDocumentLocator (XMLLocator locator)

Sets the document locator.

Parameters
locator The locator.

public void setFeature (String featureId, boolean state)

Sets the state of a feature. This method is called by the component manager any time after reset when a feature changes state.

Note: Components should silently ignore features that do not affect the operation of the component.

Parameters
featureId The feature identifier.
state The state of the feature.
Throws
The component should not throw this exception.
The component should not throw this exception.
XMLConfigurationException

public void setLocale (Locale locale)

Sets the current locale.

Parameters
locale The new locale.

public void setProperty (String propertyId, Object value)

Sets the value of a property. This method is called by the component manager any time after reset when a property changes value.

Note: Components should silently ignore properties that do not affect the operation of the component.

Parameters
propertyId The property identifier.
value The value of the property.
Throws
The component should not throw this exception.
The component should not throw this exception.
XMLConfigurationException