All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.xml.sax.SAXParseException Maven / Gradle / Ivy

// SAX exception class.
// No warranty; no copyright -- use this as you will.
// $Id: SAXParseException.java 233605 2001-11-06 18:33:40Z hannes $

package org.xml.sax;

/**
  * Encapsulate an XML parse error or warning.
  *
  * 

This exception will include information for locating the error * in the original XML document. Note that although the application * will receive a SAXParseException as the argument to the handlers * in the ErrorHandler interface, the application is not actually * required to throw the exception; instead, it can simply read the * information in it and take a different action.

* *

Since this exception is a subclass of SAXException, it * inherits the ability to wrap another exception.

* * @author David Megginson ([email protected]) * @version 1.0 * @see org.xml.sax.SAXException * @see org.xml.sax.Locator * @see org.xml.sax.ErrorHandler */ public class SAXParseException extends SAXException { ////////////////////////////////////////////////////////////////////// // Constructors. ////////////////////////////////////////////////////////////////////// /** * Create a new SAXParseException from a message and a Locator. * *

This constructor is especially useful when an application is * creating its own exception from within a DocumentHandler * callback.

* * @param message The error or warning message. * @param locator The locator object for the error or warning. * @see org.xml.sax.Locator * @see org.xml.sax.Parser#setLocale */ public SAXParseException (String message, Locator locator) { super(message); this.publicId = locator.getPublicId(); this.systemId = locator.getSystemId(); this.lineNumber = locator.getLineNumber(); this.columnNumber = locator.getColumnNumber(); } /** * Wrap an existing exception in a SAXParseException. * *

This constructor is especially useful when an application is * creating its own exception from within a DocumentHandler * callback, and needs to wrap an existing exception that is not a * subclass of SAXException.

* * @param message The error or warning message, or null to * use the message from the embedded exception. * @param locator The locator object for the error or warning. * @param e Any exception * @see org.xml.sax.Locator * @see org.xml.sax.Parser#setLocale */ public SAXParseException (String message, Locator locator, Exception e) { super(message, e); this.publicId = locator.getPublicId(); this.systemId = locator.getSystemId(); this.lineNumber = locator.getLineNumber(); this.columnNumber = locator.getColumnNumber(); } /** * Create a new SAXParseException. * *

This constructor is most useful for parser writers.

* *

If the system identifier is a URL, the parser must resolve it * fully before creating the exception.

* * @param message The error or warning message. * @param publicId The public identifer of the entity that generated * the error or warning. * @param systemId The system identifer of the entity that generated * the error or warning. * @param lineNumber The line number of the end of the text that * caused the error or warning. * @param columnNumber The column number of the end of the text that * cause the error or warning. * @see org.xml.sax.Parser#setLocale */ public SAXParseException (String message, String publicId, String systemId, int lineNumber, int columnNumber) { super(message); this.publicId = publicId; this.systemId = systemId; this.lineNumber = lineNumber; this.columnNumber = columnNumber; } /** * Create a new SAXParseException with an embedded exception. * *

This constructor is most useful for parser writers who * need to wrap an exception that is not a subclass of * SAXException.

* *

If the system identifier is a URL, the parser must resolve it * fully before creating the exception.

* * @param message The error or warning message, or null to use * the message from the embedded exception. * @param publicId The public identifer of the entity that generated * the error or warning. * @param systemId The system identifer of the entity that generated * the error or warning. * @param lineNumber The line number of the end of the text that * caused the error or warning. * @param columnNumber The column number of the end of the text that * cause the error or warning. * @param e Another exception to embed in this one. * @see org.xml.sax.Parser#setLocale */ public SAXParseException (String message, String publicId, String systemId, int lineNumber, int columnNumber, Exception e) { super(message, e); this.publicId = publicId; this.systemId = systemId; this.lineNumber = lineNumber; this.columnNumber = columnNumber; } /** * Get the public identifier of the entity where the exception occurred. * * @return A string containing the public identifier, or null * if none is available. * @see org.xml.sax.Locator#getPublicId */ public String getPublicId () { return this.publicId; } /** * Get the system identifier of the entity where the exception occurred. * *

If the system identifier is a URL, it will be resolved * fully.

* * @return A string containing the system identifier, or null * if none is available. * @see org.xml.sax.Locator#getSystemId */ public String getSystemId () { return this.systemId; } /** * The line number of the end of the text where the exception occurred. * * @return An integer representing the line number, or -1 * if none is available. * @see org.xml.sax.Locator#getLineNumber */ public int getLineNumber () { return this.lineNumber; } /** * The column number of the end of the text where the exception occurred. * *

The first column in a line is position 1.

* * @return An integer representing the column number, or -1 * if none is available. * @see org.xml.sax.Locator#getColumnNumber */ public int getColumnNumber () { return this.columnNumber; } ////////////////////////////////////////////////////////////////////// // Internal state. ////////////////////////////////////////////////////////////////////// private String publicId; private String systemId; private int lineNumber; private int columnNumber; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy