java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
edu.internet2.middleware.grouperClientExt.org.apache.commons.jexl2.JexlException
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
JexlException.Cancel, JexlException.Method, JexlException.Parsing, JexlException.Property, JexlException.Return, JexlException.Tokenization, JexlException.Variable

public class JexlException extends RuntimeException
Wraps any error that might occur during interpretation of a script or expression.
Since:
2.0
See Also:
  • Field Details

    • mark

      protected final transient JexlNode mark
      The point of origin for this exception.
    • info

      protected final transient JexlInfo info
      The debug info.
    • NULL_OPERAND

      public static final String NULL_OPERAND
      A marker to use in NPEs stating a null operand error.
      See Also:
  • Constructor Details

    • JexlException

      public JexlException(JexlNode node, String msg)
      Creates a new JexlException.
      Parameters:
      node - the node causing the error
      msg - the error message
    • JexlException

      public JexlException(JexlNode node, String msg, Throwable cause)
      Creates a new JexlException.
      Parameters:
      node - the node causing the error
      msg - the error message
      cause - the exception causing the error
    • JexlException

      public JexlException(JexlInfo dbg, String msg)
      Creates a new JexlException.
      Parameters:
      dbg - the debugging information associated
      msg - the error message
    • JexlException

      public JexlException(JexlInfo dbg, String msg, Throwable cause)
      Creates a new JexlException.
      Parameters:
      dbg - the debugging information associated
      msg - the error message
      cause - the exception causing the error
  • Method Details

    • detailedMessage

      protected String detailedMessage()
      Accesses detailed message.
      Returns:
      the message
      Since:
      2.1
    • parserError

      protected String parserError(String prefix, String expr)
      Formats an error message from the parser.
      Parameters:
      prefix - the prefix to the message
      expr - the expression in error
      Returns:
      the formatted message
      Since:
      2.1
    • getInfo

      public String getInfo(int[] offsets)
      Gets information about the cause of this error.

      The returned string represents the outermost expression in error. The info parameter, an int[2] optionally provided by the caller, will be filled with the begin/end offset characters of the precise error's trigger.

      Parameters:
      offsets - character offset interval of the precise node triggering the error
      Returns:
      a string representation of the offending expression, the empty string if it could not be determined
    • getMessage

      public String getMessage()
      Detailed info message about this error. Format is "debug![begin,end]: string \n msg" where: - debug is the debugging information if it exists (@link JexlEngine.setDebug) - begin, end are character offsets in the string for the precise location of the error - string is the string representation of the offending expression - msg is the actual explanation message for this error
      Overrides:
      getMessage in class Throwable
      Returns:
      this error as a string