Class XmlError

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    XmlValidationError

    public class XmlError
    extends java.lang.Object
    implements java.io.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), XmlException, Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      XmlError​(XmlError src)
      Copy constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static XmlError forCursor​(java.lang.String message, int severity, XmlCursor cursor)
      Returns an XmlError for the given message, with the given severity, located at the XmlCursor.
      static XmlError forCursor​(java.lang.String code, java.lang.Object[] args, int severity, XmlCursor cursor)
      Returns an XmlError for the given message, with the given severity, located at the XmlCursor.
      static XmlError forCursor​(java.lang.String code, java.lang.Object[] args, XmlCursor cursor)
      Returns an XmlError for the given message, located at the XmlCursor, with SEVERITY_ERROR.
      static XmlError forCursor​(java.lang.String message, XmlCursor cursor)
      Returns an XmlError for the given message, located at the XmlCursor, with SEVERITY_ERROR.
      static XmlError forLocation​(java.lang.String message, int severity, java.lang.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​(java.lang.String code, java.lang.Object[] args, int severity, java.lang.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​(java.lang.String message, java.lang.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​(java.lang.String message, java.lang.String sourceName, javax.xml.stream.Location location)
      Returns an XmlError for the given message, located at a specific point in the given file and SEVERITY_ERROR.
      static XmlError forLocationAndCursor​(java.lang.String message, int severity, java.lang.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.
      static java.lang.String formattedMessage​(java.lang.String code, java.lang.Object[] args)
      Tries to format a message using the error code.
      static XmlError forMessage​(java.lang.String message)
      Returns an XmlError for the given message, with no location and SEVERITY_ERROR.
      static XmlError forMessage​(java.lang.String message, int severity)
      Returns an XmlError for the given message, with no location and the given severity.
      static XmlError forMessage​(java.lang.String code, java.lang.Object[] args)
      Returns an XmlError for the given message, with no location and the given severity.
      static XmlError forMessage​(java.lang.String code, java.lang.Object[] args, int severity)
      Returns an XmlError for the given message, with no location and the given severity.
      static XmlError forObject​(java.lang.String message, int severity, XmlObject xobj)
      Returns an XmlError for the given message, with the given severity, located at the XmlObject.
      static XmlError forObject​(java.lang.String code, java.lang.Object[] args, int severity, XmlObject xobj)
      Returns an XmlError for the given message, with the given severity, located at the XmlObject.
      static XmlError forObject​(java.lang.String code, java.lang.Object[] args, XmlObject xobj)
      Returns an XmlError for the given message, located at the XmlObject, with SEVERITY_ERROR.
      static XmlError forObject​(java.lang.String message, XmlObject xobj)
      Returns an XmlError for the given message, located at the XmlObject, with SEVERITY_ERROR.
      static XmlError forSource​(java.lang.String message, int severity, java.lang.String sourceName)
      Returns an XmlError for the given message, with the given severity, located in the given file.
      static XmlError forSource​(java.lang.String code, java.lang.Object[] args, int severity, java.lang.String sourceName)
      Returns an XmlError for the given message, with the given severity, located in the given file.
      static XmlError forSource​(java.lang.String message, java.lang.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.
      java.lang.String getErrorCode()
      Returns the error code or null.
      int getLine()
      Returns the line number of the error, if available, -1 if not.
      java.lang.Object getLocation​(java.lang.Object type)
      Returns a location object of the given type.
      java.lang.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.
      java.lang.String getSourceName()
      Returns the URL (or other name) of the file with the error, if available.
      static java.lang.String severityAsString​(int severity)  
      java.lang.String toString()
      Produces a standard string for the error message, complete with filename and location offsets if available.
      java.lang.String toString​(java.net.URI base)
      Produces a standard string with the error message.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • XmlError

        public XmlError​(XmlError src)
        Copy constructor.
        Parameters:
        src - The original XmlError to copy.
    • Method Detail

      • forMessage

        public static XmlError forMessage​(java.lang.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​(java.lang.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​(java.lang.String code,
                                          java.lang.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​(java.lang.String code,
                                          java.lang.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​(java.lang.String message,
                                         java.lang.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​(java.lang.String message,
                                         int severity,
                                         java.lang.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​(java.lang.String code,
                                         java.lang.Object[] args,
                                         int severity,
                                         java.lang.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​(java.lang.String message,
                                           java.lang.String sourceName,
                                           javax.xml.stream.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​(java.lang.String message,
                                           java.lang.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​(java.lang.String code,
                                           java.lang.Object[] args,
                                           int severity,
                                           java.lang.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​(java.lang.String message,
                                           int severity,
                                           java.lang.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​(java.lang.String message,
                                                    int severity,
                                                    java.lang.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​(java.lang.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​(java.lang.String code,
                                         java.lang.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​(java.lang.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​(java.lang.String code,
                                         java.lang.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​(java.lang.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​(java.lang.String code,
                                         java.lang.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​(java.lang.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​(java.lang.String code,
                                         java.lang.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
      • formattedMessage

        public static java.lang.String formattedMessage​(java.lang.String code,
                                                        java.lang.Object[] args)
        Tries to format a message using the error code.
      • getMessage

        public java.lang.String getMessage()
        Returns the error message without location information.
      • getErrorCode

        public java.lang.String getErrorCode()
        Returns the error code or null. See XmlErrorCodes.
      • getSourceName

        public java.lang.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 java.lang.Object getLocation​(java.lang.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 java.lang.String toString()
        Produces a standard string for the error message, complete with filename and location offsets if available.
        Overrides:
        toString in class java.lang.Object
      • toString

        public java.lang.String toString​(java.net.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 java.lang.String severityAsString​(int severity)