Class XPathException

    • Constructor Summary

      Constructors 
      Constructor Description
      XPathException​(java.lang.String message)
      Create an XPathException with an error message
      XPathException​(java.lang.String message, java.lang.String errorCode)
      Create an XPathException that supplies an error message and an error code
      XPathException​(java.lang.String message, java.lang.String errorCode, XPathContext context)
      Create an XPathException that supplies an error message and an error code and provides the dynamic context
      XPathException​(java.lang.String message, java.lang.String errorCode, Location loc)
      Create an XPathException that supplies an error message and supplies location information
      XPathException​(java.lang.String message, java.lang.Throwable err)
      Create an XPathException that supplies an error message and wraps an underlying exception
      XPathException​(java.lang.String message, Location loc, java.lang.Throwable err)
      Create an XPathException that supplies an error message and wraps an underlying exception and supplies location information
      XPathException​(java.lang.Throwable err)
      Create an XPathException that wraps another exception
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static XPathException fromXmlProcessingError​(XmlProcessingError error)  
      java.lang.String getErrorCodeLocalPart()
      Get the local part of the name of the error code
      java.lang.String getErrorCodeNamespace()
      Get the namespace URI part of the name of the error code
      StructuredQName getErrorCodeQName()
      Get the error code as a QName
      Sequence getErrorObject()
      Get the error object associated with this error.
      Expression getFailingExpression()  
      java.lang.String getHostLanguage()
      Get the host language code
      Location getLocator()
      Method getLocator retrieves an instance of a SourceLocator object that specifies where an error occured.
      XPathContext getXPathContext()
      Get the dynamic context at the time the exception occurred
      boolean hasBeenReported()
      Ask whether this error is marked to indicate that it has already been reported to the error listener, and should not be reported again
      boolean isGlobalError()
      Ask whether this exception originated while evaluating a global variable reference, and is therefore to be reported regardless of the try/catch context surrounding the variable reference
      boolean isReportableStatically()
      Tests whether this is a dynamic error that may be reported statically if it is detected statically
      boolean isStaticError()
      Ask whether this exception represents a static error
      boolean isSyntaxError()
      Ask whether this exception represents a syntax error
      boolean isTypeError()
      Ask whether this exception represents a type error
      static XPathException makeXPathException​(java.lang.Exception err)
      Create an XPathException from an exception of another kind.
      void maybeSetContext​(XPathContext context)
      Set the context of a message, only if it is not already set
      void maybeSetErrorCode​(java.lang.String code)
      Set the error code, provided it has not already been set.
      void maybeSetFailingExpression​(Expression failingExpression)  
      void maybeSetLocation​(Location here)
      Set the location of a message, only if it is not already set
      void setErrorCode​(java.lang.String code)
      Set the error code.
      void setErrorCodeQName​(StructuredQName code)
      Set the error code.
      void setErrorObject​(Sequence value)
      Set the error object associated with this error.
      void setFailingExpression​(Expression failingExpression)  
      void setHasBeenReported​(boolean reported)
      Mark this error to indicate that it has already been reported to the error listener, and should not be reported again
      void setHostLanguage​(java.lang.String language)
      Set the host language code
      void setHostLanguage​(HostLanguage language)
      Set the host language code
      void setIsGlobalError​(boolean is)
      Mark this exception to indicate that it originated while evaluating a global variable reference, and is therefore to be reported regardless of the try/catch context surrounding the variable reference
      void setIsStaticError​(boolean is)
      Mark this exception to indicate that it represents (or does not represent) a static error
      void setIsSyntaxError​(boolean is)
      Mark this exception to indicate that it represents (or does not represent) a syntax error
      void setIsTypeError​(boolean is)
      Mark this exception to indicate that it represents (or does not represent) a type error
      void setLocation​(Location loc)  
      void setXPathContext​(XPathContext context)
      Set dynamic context information in the exception object
      • Methods inherited from class javax.xml.transform.TransformerException

        getCause, getException, getLocationAsString, getMessageAndLocation, initCause, printStackTrace, printStackTrace, printStackTrace, setLocator
      • Methods inherited from class java.lang.Throwable

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

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

      • XPathException

        public XPathException​(java.lang.String message)
        Create an XPathException with an error message
        Parameters:
        message - the message explaining what is wrong. This should not include location information.
      • XPathException

        public XPathException​(java.lang.Throwable err)
        Create an XPathException that wraps another exception
        Parameters:
        err - the wrapped error or exception
      • XPathException

        public XPathException​(java.lang.String message,
                              java.lang.Throwable err)
        Create an XPathException that supplies an error message and wraps an underlying exception
        Parameters:
        message - the error message (which should generally explain what Saxon was doing when the underlying exception occurred)
        err - the underlying exception (the cause of this exception)
      • XPathException

        public XPathException​(java.lang.String message,
                              java.lang.String errorCode,
                              Location loc)
        Create an XPathException that supplies an error message and supplies location information
        Parameters:
        message - the error message
        loc - indicates where in the user-written query or stylesheet (or sometimes in a source document) the error occurred
      • XPathException

        public XPathException​(java.lang.String message,
                              Location loc,
                              java.lang.Throwable err)
        Create an XPathException that supplies an error message and wraps an underlying exception and supplies location information
        Parameters:
        message - the error message (which should generally explain what Saxon was doing when the underlying exception occurred)
        loc - indicates where in the user-written query or stylesheet (or sometimes in a source document) the error occurred
        err - the underlying exception (the cause of this exception)
      • XPathException

        public XPathException​(java.lang.String message,
                              java.lang.String errorCode)
        Create an XPathException that supplies an error message and an error code
        Parameters:
        message - the error message
        errorCode - the error code - an eight-character code, which is taken to be in the standard system error code namespace
      • XPathException

        public XPathException​(java.lang.String message,
                              java.lang.String errorCode,
                              XPathContext context)
        Create an XPathException that supplies an error message and an error code and provides the dynamic context
        Parameters:
        message - the error message
        errorCode - the error code - an eight-character code, which is taken to be in the standard system error code namespace
        context - the dynamic evaluation context
    • Method Detail

      • makeXPathException

        public static XPathException makeXPathException​(java.lang.Exception err)
        Create an XPathException from an exception of another kind. If the supplied Exception is an XPathException; if its cause is an XPathException, that XPathException is returned unchanged; otherwise the supplied Exception is wrapped.
        Parameters:
        err - the supplied Exception
        Returns:
        an XPathException obtained from the supplied TransformerException
      • setXPathContext

        public void setXPathContext​(XPathContext context)
        Set dynamic context information in the exception object
        Parameters:
        context - the dynamic context at the time the exception occurred
      • setLocation

        public void setLocation​(Location loc)
      • getFailingExpression

        public Expression getFailingExpression()
      • setFailingExpression

        public void setFailingExpression​(Expression failingExpression)
      • maybeSetFailingExpression

        public void maybeSetFailingExpression​(Expression failingExpression)
      • getLocator

        public Location getLocator()
        Method getLocator retrieves an instance of a SourceLocator object that specifies where an error occured.
        Overrides:
        getLocator in class javax.xml.transform.TransformerException
        Returns:
        A SourceLocator object, or null if none was specified.
      • getXPathContext

        public XPathContext getXPathContext()
        Get the dynamic context at the time the exception occurred
        Returns:
        the dynamic context if known; otherwise null
      • setIsStaticError

        public void setIsStaticError​(boolean is)
        Mark this exception to indicate that it represents (or does not represent) a static error
        Parameters:
        is - true if this exception is a static error
      • isStaticError

        public boolean isStaticError()
        Ask whether this exception represents a static error
        Returns:
        true if this exception is a static error
      • setIsSyntaxError

        public void setIsSyntaxError​(boolean is)
        Mark this exception to indicate that it represents (or does not represent) a syntax error
        Parameters:
        is - true if this exception is a syntax error
      • isSyntaxError

        public boolean isSyntaxError()
        Ask whether this exception represents a syntax error
        Returns:
        true if this exception is a syntax error
      • setIsTypeError

        public void setIsTypeError​(boolean is)
        Mark this exception to indicate that it represents (or does not represent) a type error
        Parameters:
        is - true if this exception is a type error
      • isTypeError

        public boolean isTypeError()
        Ask whether this exception represents a type error
        Returns:
        true if this exception is a type error
      • setIsGlobalError

        public void setIsGlobalError​(boolean is)
        Mark this exception to indicate that it originated while evaluating a global variable reference, and is therefore to be reported regardless of the try/catch context surrounding the variable reference
        Parameters:
        is - true if this exception is a global variable error
      • isGlobalError

        public boolean isGlobalError()
        Ask whether this exception originated while evaluating a global variable reference, and is therefore to be reported regardless of the try/catch context surrounding the variable reference
        Returns:
        true if this exception is a global variable error
      • setHostLanguage

        public void setHostLanguage​(java.lang.String language)
        Set the host language code
        Parameters:
        language - a value such as "XPath", "XQuery", "XSLT Pattern"
      • setHostLanguage

        public void setHostLanguage​(HostLanguage language)
        Set the host language code
        Parameters:
        language - a value such as "XPath", "XQuery", "XSLT Pattern"
      • getHostLanguage

        public java.lang.String getHostLanguage()
        Get the host language code
        Returns:
        a value such as "XPath", "XQuery", "XSLT Pattern", or null
      • setErrorCode

        public void setErrorCode​(java.lang.String code)
        Set the error code. The error code is a QName; this method sets the local part of the name, setting the namespace of the error code to the standard system namespace NamespaceConstant.ERR
        Parameters:
        code - The local part of the name of the error code
      • maybeSetErrorCode

        public void maybeSetErrorCode​(java.lang.String code)
        Set the error code, provided it has not already been set. The error code is a QName; this method sets the local part of the name, setting the namespace of the error code to the standard system namespace NamespaceConstant.ERR
        Parameters:
        code - The local part of the name of the error code
      • setErrorCodeQName

        public void setErrorCodeQName​(StructuredQName code)
        Set the error code. The error code is a QName; this method sets both parts of the name.
        Parameters:
        code - The error code as a QName
      • getErrorCodeQName

        public StructuredQName getErrorCodeQName()
        Get the error code as a QName
        Returns:
        the error code as a QName
      • getErrorCodeLocalPart

        public java.lang.String getErrorCodeLocalPart()
        Get the local part of the name of the error code
        Returns:
        the local part of the name of the error code
      • getErrorCodeNamespace

        public java.lang.String getErrorCodeNamespace()
        Get the namespace URI part of the name of the error code
        Returns:
        the namespace URI part of the name of the error code
      • setErrorObject

        public void setErrorObject​(Sequence value)
        Set the error object associated with this error. This is used by the standard XPath fn:error() function
        Parameters:
        value - the error object, as supplied to the fn:error() function
      • getErrorObject

        public Sequence getErrorObject()
        Get the error object associated with this error. This is used by the standard XPath fn:error() function
        Returns:
        the error object, as supplied to the fn:error() function
      • setHasBeenReported

        public void setHasBeenReported​(boolean reported)
        Mark this error to indicate that it has already been reported to the error listener, and should not be reported again
        Parameters:
        reported - true if the error has been reported to the error listener
      • hasBeenReported

        public boolean hasBeenReported()
        Ask whether this error is marked to indicate that it has already been reported to the error listener, and should not be reported again
        Returns:
        true if this error has already been reported
      • maybeSetLocation

        public void maybeSetLocation​(Location here)
        Set the location of a message, only if it is not already set
        Parameters:
        here - the current location (or null)
      • maybeSetContext

        public void maybeSetContext​(XPathContext context)
        Set the context of a message, only if it is not already set
        Parameters:
        context - the current XPath context (or null)
      • isReportableStatically

        public boolean isReportableStatically()
        Tests whether this is a dynamic error that may be reported statically if it is detected statically
        Returns:
        true if the error can be reported statically