/** * Reports an error. Errors are non-fatal and usually signify that the document is invalid with * respect to its grammar(s). * * @param domain The domain of the error. The domain can be any string but is suggested to be a * valid URI. The domain can be used to conveniently specify a web site location of the * relevent specification or document pertaining to this error. * @param key The error key. This key can be any string and is implementation dependent. * @param exception Exception. * @throws XNIException Thrown to signal that the parser should stop parsing the document. */ public void error(String domain, String key, XMLParseException exception) throws XNIException { fDOMError.fSeverity = DOMError.SEVERITY_ERROR; fDOMError.fException = exception; // REVISIT: May need to lookup from DOMErrorTypeMap in the future. fDOMError.fType = key; fDOMError.fRelatedData = fDOMError.fMessage = exception.getMessage(); DOMLocatorImpl locator = fDOMError.fLocator; if (locator != null) { locator.fColumnNumber = exception.getColumnNumber(); locator.fLineNumber = exception.getLineNumber(); locator.fUtf16Offset = exception.getCharacterOffset(); locator.fUri = exception.getExpandedSystemId(); locator.fRelatedNode = fCurrentNode; } if (fDomErrorHandler != null) { fDomErrorHandler.handleError(fDOMError); } } // error(String,String,XMLParseException)
/** * Report a fatal error. Fatal errors usually occur when the document is not well-formed and * signifies that the parser cannot continue normal operation. * * <p><strong>Note:</strong> The error handler should <em>always</em> throw an <code>XNIException * </code> from this method. This exception can either be the same exception that is passed as a * parameter to the method or a new XNI exception object. If the registered error handler fails to * throw an exception, the continuing operation of the parser is undetermined. * * @param domain The domain of the fatal error. The domain can be any string but is suggested to * be a valid URI. The domain can be used to conveniently specify a web site location of the * relevent specification or document pertaining to this fatal error. * @param key The fatal error key. This key can be any string and is implementation dependent. * @param exception Exception. * @throws XNIException Thrown to signal that the parser should stop parsing the document. */ public void fatalError(String domain, String key, XMLParseException exception) throws XNIException { fDOMError.fSeverity = DOMError.SEVERITY_FATAL_ERROR; fDOMError.fException = exception; fErrorCode.setValues(domain, key); String domErrorType = DOMErrorTypeMap.getDOMErrorType(fErrorCode); fDOMError.fType = (domErrorType != null) ? domErrorType : key; fDOMError.fRelatedData = fDOMError.fMessage = exception.getMessage(); DOMLocatorImpl locator = fDOMError.fLocator; if (locator != null) { locator.fColumnNumber = exception.getColumnNumber(); locator.fLineNumber = exception.getLineNumber(); locator.fUtf16Offset = exception.getCharacterOffset(); locator.fUri = exception.getExpandedSystemId(); locator.fRelatedNode = fCurrentNode; } if (fDomErrorHandler != null) { fDomErrorHandler.handleError(fDOMError); } } // fatalError(String,String,XMLParseException)