Package org.apache.xmlbeans

## Class XmlError

- java.lang.Object
- - org.apache.xmlbeans.XmlError

- All Implemented Interfaces:
    `Serializable`
  Direct Known Subclasses:
    `XmlValidationError`

      public class XmlError
      extends Object
      implements Serializable

  Represents a message at a specific XML location.

  The message can be an error, warning, or simple information, and it may optionally be associated with a specific location in an XML document. The class includes methods for extracting the location as a line number, XmlCursor, or XmlObject, as well as for obtaining and message and severity of the error.

  See Also:
    `XmlOptions.setErrorListener(java.util.Collection<org.apache.xmlbeans.XmlError>)`, `XmlException`, Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `SEVERITY_ERROR` | An error.
    `static int` | `SEVERITY_INFO` | An informational message.
    `static int` | `SEVERITY_WARNING` | A warning.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `XmlError​(String code, Object[] args, int severity, Location loc)` |
    `protected` | `XmlError​(String code, Object[] args, int severity, XmlCursor cursor)` |
    `protected` | `XmlError​(String message, String code, int severity, Location loc)` | The static factory methods should be used instead of this constructor.
    `protected` | `XmlError​(String message, String code, int severity, XmlCursor cursor)` | The static factory methods should be used instead of this constructor.
    `` | `XmlError​(XmlError src)` | Copy constructor.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static XmlError` | `forCursor​(String message, int severity, XmlCursor cursor)` | Returns an XmlError for the given message, with the given severity, located at the XmlCursor.
    `static XmlError` | `forCursor​(String code, Object[] args, int severity, XmlCursor cursor)` | Returns an XmlError for the given message, with the given severity, located at the XmlCursor.
    `static XmlError` | `forCursor​(String code, Object[] args, XmlCursor cursor)` | Returns an XmlError for the given message, located at the XmlCursor, with `SEVERITY_ERROR`.
    `static XmlError` | `forCursor​(String message, XmlCursor cursor)` | Returns an XmlError for the given message, located at the XmlCursor, with `SEVERITY_ERROR`.
    `static XmlError` | `forLocation​(String message, int severity, String sourceName, int line, int column, int offset)` | Returns an XmlError for the given message, with the given severity, located at a specific point in the given file.
    `static XmlError` | `forLocation​(String code, Object[] args, int severity, String sourceName, int line, int column, int offset)` | Returns an XmlError for the given message, with the given severity, located at a specific point in the given file.
    `static XmlError` | `forLocation​(String message, String sourceName, int line, int column, int offset)` | Returns an XmlError for the given message, located at a specific point in the given file and `SEVERITY_ERROR`.
    `static XmlError` | `forLocation​(String message, String sourceName, Location location)` | Returns an XmlError for the given message, located at a specific point in the given file and `SEVERITY_ERROR`.
    `static XmlError` | `forLocationAndCursor​(String message, int severity, String sourceName, int line, int column, int offset, XmlCursor cursor)` | Returns an XmlError for the given message, with the given severity, located at the given physcial location and XmlCursor.
    `protected static String` | `formattedFileName​(String rawString, URI base)` | Tries to produce a nicely formatted filename from the given string.
    `static String` | `formattedMessage​(String code, Object[] args)` | Tries to format a message using the error code.
    `static XmlError` | `forMessage​(String message)` | Returns an XmlError for the given message, with no location and `SEVERITY_ERROR`.
    `static XmlError` | `forMessage​(String message, int severity)` | Returns an XmlError for the given message, with no location and the given severity.
    `static XmlError` | `forMessage​(String code, Object[] args)` | Returns an XmlError for the given message, with no location and the given severity.
    `static XmlError` | `forMessage​(String code, Object[] args, int severity)` | Returns an XmlError for the given message, with no location and the given severity.
    `static XmlError` | `forObject​(String message, int severity, XmlObject xobj)` | Returns an XmlError for the given message, with the given severity, located at the XmlObject.
    `static XmlError` | `forObject​(String code, Object[] args, int severity, XmlObject xobj)` | Returns an XmlError for the given message, with the given severity, located at the XmlObject.
    `static XmlError` | `forObject​(String code, Object[] args, XmlObject xobj)` | Returns an XmlError for the given message, located at the XmlObject, with `SEVERITY_ERROR`.
    `static XmlError` | `forObject​(String message, XmlObject xobj)` | Returns an XmlError for the given message, located at the XmlObject, with `SEVERITY_ERROR`.
    `static XmlError` | `forSource​(String message, int severity, String sourceName)` | Returns an XmlError for the given message, with the given severity, located in the given file.
    `static XmlError` | `forSource​(String code, Object[] args, int severity, String sourceName)` | Returns an XmlError for the given message, with the given severity, located in the given file.
    `static XmlError` | `forSource​(String message, String sourceName)` | Returns an XmlError for the given message, located in the given file and `SEVERITY_ERROR`.
    `int` | `getColumn()` | Returns the column number of the error, if available, -1 if not.
    `XmlCursor` | `getCursorLocation()` | Returns a location of the error as an `XmlCursor`, null if not available.
    `String` | `getErrorCode()` | Returns the error code or null.
    `int` | `getLine()` | Returns the line number of the error, if available, -1 if not.
    `Object` | `getLocation​(Object type)` | Returns a location object of the given type.
    `String` | `getMessage()` | Returns the error message without location information.
    `XmlObject` | `getObjectLocation()` | Returns a location of the error as an `XmlObject`, null if not available.
    `int` | `getOffset()` | Returns the file character offset of the error, if available, -1 if not.
    `int` | `getSeverity()` | Returns the severity.
    `String` | `getSourceName()` | Returns the URL (or other name) of the file with the error, if available.
    `static String` | `severityAsString​(int severity)` |
    `String` | `toString()` | Produces a standard string for the error message, complete with filename and location offsets if available.
    `String` | `toString​(URI base)` | Produces a standard string with the error message.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### SEVERITY_ERROR

          public static final int SEVERITY_ERROR

      An error. See `getSeverity()`.
      See Also:
        Constant Field Values

    - #### SEVERITY_WARNING

          public static final int SEVERITY_WARNING

      A warning. See `getSeverity()`.
      See Also:
        Constant Field Values

    - #### SEVERITY_INFO

          public static final int SEVERITY_INFO

      An informational message. See `getSeverity()`.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### XmlError

          public XmlError​(XmlError src)

      Copy constructor.
      Parameters:
        `src` - The original XmlError to copy.

    - #### XmlError

          protected XmlError​(String message,
                             String code,
                             int severity,
                             XmlCursor cursor)

      The static factory methods should be used instead of this constructor.

    - #### XmlError

          protected XmlError​(String code,
                             Object[] args,
                             int severity,
                             XmlCursor cursor)

    - #### XmlError

          protected XmlError​(String message,
                             String code,
                             int severity,
                             Location loc)

      The static factory methods should be used instead of this constructor.

    - #### XmlError

          protected XmlError​(String code,
                             Object[] args,
                             int severity,
                             Location loc)

  - ### Method Detail

    - #### forMessage

          public static XmlError forMessage​(String message)

      Returns an XmlError for the given message, with no location and `SEVERITY_ERROR`.
      Parameters:
        `message` - the error message

    - #### forMessage

          public static XmlError forMessage​(String message,
                                            int severity)

      Returns an XmlError for the given message, with no location and the given severity.
      Parameters:
        `message` - the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)

    - #### forMessage

          public static XmlError forMessage​(String code,
                                            Object[] args)

      Returns an XmlError for the given message, with no location and the given severity.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message

    - #### forMessage

          public static XmlError forMessage​(String code,
                                            Object[] args,
                                            int severity)

      Returns an XmlError for the given message, with no location and the given severity.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)

    - #### forSource

          public static XmlError forSource​(String message,
                                           String sourceName)

      Returns an XmlError for the given message, located in the given file and `SEVERITY_ERROR`.
      Parameters:
        `message` - the error message
        `sourceName` - the URL or other name for the file

    - #### forSource

          public static XmlError forSource​(String message,
                                           int severity,
                                           String sourceName)

      Returns an XmlError for the given message, with the given severity, located in the given file.
      Parameters:
        `message` - the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `sourceName` - the URL or other name for the file

    - #### forSource

          public static XmlError forSource​(String code,
                                           Object[] args,
                                           int severity,
                                           String sourceName)

      Returns an XmlError for the given message, with the given severity, located in the given file.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `sourceName` - the URL or other name for the file

    - #### forLocation

          public static XmlError forLocation​(String message,
                                             String sourceName,
                                             Location location)

      Returns an XmlError for the given message, located at a specific point in the given file and `SEVERITY_ERROR`.
      Parameters:
        `message` - the error message
        `sourceName` - the URL or other name for the file
        `location` - the location from an xml stream

    - #### forLocation

          public static XmlError forLocation​(String message,
                                             String sourceName,
                                             int line,
                                             int column,
                                             int offset)

      Returns an XmlError for the given message, located at a specific point in the given file and `SEVERITY_ERROR`.
      Parameters:
        `message` - the error message
        `sourceName` - the URL or other name for the file
        `line` - the 1-based line number, or -1 if not known
        `column` - the 1-based column number, or -1 if not known
        `offset` - the 0-base file character offset, or -1 if not known

    - #### forLocation

          public static XmlError forLocation​(String code,
                                             Object[] args,
                                             int severity,
                                             String sourceName,
                                             int line,
                                             int column,
                                             int offset)

      Returns an XmlError for the given message, with the given severity, located at a specific point in the given file.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `sourceName` - the URL or other name for the file
        `line` - the 1-based line number, or -1 if not known
        `column` - the 1-based column number, or -1 if not known
        `offset` - the 0-base file character offset, or -1 if not known

    - #### forLocation

          public static XmlError forLocation​(String message,
                                             int severity,
                                             String sourceName,
                                             int line,
                                             int column,
                                             int offset)

      Returns an XmlError for the given message, with the given severity, located at a specific point in the given file.
      Parameters:
        `message` - the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `sourceName` - the URL or other name for the file
        `line` - the 1-based line number, or -1 if not known
        `column` - the 1-based column number, or -1 if not known
        `offset` - the 0-base file character offset, or -1 if not known

    - #### forLocationAndCursor

          public static XmlError forLocationAndCursor​(String message,
                                                      int severity,
                                                      String sourceName,
                                                      int line,
                                                      int column,
                                                      int offset,
                                                      XmlCursor cursor)

      Returns an XmlError for the given message, with the given severity, located at the given physcial location and XmlCursor.
      Parameters:
        `message` - the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `sourceName` - the URL or other name for the file
        `line` - the 1-based line number, or -1 if not known
        `column` - the 1-based column number, or -1 if not known
        `offset` - the 0-base file character offset, or -1 if not known
        `cursor` - the XmlCursor representing the location of the error

    - #### forObject

          public static XmlError forObject​(String message,
                                           XmlObject xobj)

      Returns an XmlError for the given message, located at the XmlObject, with `SEVERITY_ERROR`.
      Parameters:
        `message` - the error message
        `xobj` - the XmlObject representing the location of the error

    - #### forObject

          public static XmlError forObject​(String code,
                                           Object[] args,
                                           XmlObject xobj)

      Returns an XmlError for the given message, located at the XmlObject, with `SEVERITY_ERROR`.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `xobj` - the XmlObject representing the location of the error

    - #### forObject

          public static XmlError forObject​(String message,
                                           int severity,
                                           XmlObject xobj)

      Returns an XmlError for the given message, with the given severity, located at the XmlObject.
      Parameters:
        `message` - the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `xobj` - the XmlObject representing the location of the error

    - #### forObject

          public static XmlError forObject​(String code,
                                           Object[] args,
                                           int severity,
                                           XmlObject xobj)

      Returns an XmlError for the given message, with the given severity, located at the XmlObject.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `xobj` - the XmlObject representing the location of the error

    - #### forCursor

          public static XmlError forCursor​(String message,
                                           XmlCursor cursor)

      Returns an XmlError for the given message, located at the XmlCursor, with `SEVERITY_ERROR`.
      Parameters:
        `message` - the error message
        `cursor` - the XmlCursor representing the location of the error

    - #### forCursor

          public static XmlError forCursor​(String code,
                                           Object[] args,
                                           XmlCursor cursor)

      Returns an XmlError for the given message, located at the XmlCursor, with `SEVERITY_ERROR`.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `cursor` - the XmlCursor representing the location of the error

    - #### forCursor

          public static XmlError forCursor​(String message,
                                           int severity,
                                           XmlCursor cursor)

      Returns an XmlError for the given message, with the given severity, located at the XmlCursor.
      Parameters:
        `message` - the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `cursor` - the XmlCursor representing the location of the error

    - #### forCursor

          public static XmlError forCursor​(String code,
                                           Object[] args,
                                           int severity,
                                           XmlCursor cursor)

      Returns an XmlError for the given message, with the given severity, located at the XmlCursor.
      Parameters:
        `code` - the error code
        `args` - the arguments to use in formatting the error message
        `severity` - the severity (`SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`)
        `cursor` - the XmlCursor representing the location of the error

    - #### formattedFileName

          protected static String formattedFileName​(String rawString,
                                                    URI base)

      Tries to produce a nicely formatted filename from the given string.

    - #### formattedMessage

          public static String formattedMessage​(String code,
                                                Object[] args)

      Tries to format a message using the error code.

    - #### getSeverity

          public int getSeverity()

      Returns the severity. Either `SEVERITY_ERROR`, `SEVERITY_WARNING`, or `SEVERITY_INFO`.

    - #### getMessage

          public String getMessage()

      Returns the error message without location information.

    - #### getErrorCode

          public String getErrorCode()

      Returns the error code or null. See `XmlErrorCodes`.

    - #### getSourceName

          public String getSourceName()

      Returns the URL (or other name) of the file with the error, if available.

    - #### getLine

          public int getLine()

      Returns the line number of the error, if available, -1 if not.

    - #### getColumn

          public int getColumn()

      Returns the column number of the error, if available, -1 if not.

    - #### getOffset

          public int getOffset()

      Returns the file character offset of the error, if available, -1 if not.

    - #### getLocation

          public Object getLocation​(Object type)

      Returns a location object of the given type. XmlCursor.class and XmlObject.class can be passed, for example. Null if not available.

    - #### getCursorLocation

          public XmlCursor getCursorLocation()

      Returns a location of the error as an `XmlCursor`, null if not available.

    - #### getObjectLocation

          public XmlObject getObjectLocation()

      Returns a location of the error as an `XmlObject`, null if not available.

    - #### toString

          public String toString()

      Produces a standard string for the error message, complete with filename and location offsets if available.
      Overrides:
        `toString` in class `Object`

    - #### toString

          public String toString​(URI base)

      Produces a standard string with the error message. If a non-null URI is supplied, source names are relativized against the given URI.

    - #### severityAsString

          public static String severityAsString​(int severity)