Class XQException

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

    public class XQException
    extends java.lang.Exception
    An exception that provides information on XQJ, XQuery or other errors reported by an XQJ implementation.

    Each XQException provides several kinds of information:
    • a string describing the error. This is used as the Java Exception message, available via the method getMessage.
    • the cause of the error. This is used as the Java Exception cause, available via the method getCause.
    • the vendor code identifying the error. Available via the method getVendorCode. Refer to the vendor documentation which specific codes can be returned.
    • a chain of XQException objects. If more than one error occurred the exceptions are referenced via this chain.


    Note that XQException has a subclass XQQueryException providing more detailed information about errors that occurred during the processing of a query. An implementation throws a base XQException when an error occurs in the XQJ implementation. Further, implementations are encouraged to use the more detailed XQQueryException in case of an error reported by the XQuery engine.

    It is possible that during the processing of a query that one or more errors could occur, each with their own potential causal relationship. This means that when an XQJ application catches an XQException, there is a possibility that there may be additional XQException objects chained to the original thrown XQException. To access the additional chained XQException objects, an application would recursively invoke getNextException until a null value is returned.

    An XQException may have a causal relationship, which consists of one or more Throwable instances which caused the XQException to be thrown. The application may recursively call the method getCause, until a null value is returned, to navigate the chain of causes.
    See Also:
    Serialized Form
    • Constructor Summary

      Constructors 
      Constructor Description
      XQException​(java.lang.String message)
      Constructs an XQException object with a given message.
      XQException​(java.lang.String message, java.lang.String vendorCode)
      Constructs an XQException object with a given message and vendor code.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      XQException getNextException()
      Returns the next XQException in the chain or null if none.
      java.lang.String getVendorCode()
      Gets the vendor code associated with this exception or null if none.
      void setNextException​(XQException next)
      Adds an XQException to the chain of exceptions.
      • Methods inherited from class java.lang.Throwable

        addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
      • Methods inherited from class java.lang.Object

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

      • XQException

        public XQException​(java.lang.String message)
        Constructs an XQException object with a given message. An optional chain of additional XQException objects may be set subsequently using setNextException.
        Parameters:
        message - the description of the error. null indicates that the message string is non existant
      • XQException

        public XQException​(java.lang.String message,
                           java.lang.String vendorCode)
        Constructs an XQException object with a given message and vendor code. An optional chain of additional XQException objects may be set subsequently using setNextException.
        Parameters:
        message - the description of the error. null indicates that the message string is non existant
        vendorCode - a vendor-specific string identifying the error. null indicates there is no vendor code or it is unknown
    • Method Detail

      • getVendorCode

        public java.lang.String getVendorCode()
        Gets the vendor code associated with this exception or null if none. A vendor code is a vendor-specific string identifying the failure in a computer-comparable manner. For example, "NOCONNECT" if unable to connect or "DIVBYZERO" if division by zero occurred within the XQuery.
        Returns:
        the vendor code string, or null if none available
      • getNextException

        public XQException getNextException()
        Returns the next XQException in the chain or null if none.
        Returns:
        the next exception, or null if none
      • setNextException

        public void setNextException​(XQException next)
        Adds an XQException to the chain of exceptions.
        Parameters:
        next - the next exception to be added to the chain of exceptions