org.apache.commons.jexl2
Class JexlException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.lang.RuntimeException
              extended by 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:
Serialized Form

Nested Class Summary
protected static class JexlException.Cancel
          Thrown to cancel a script execution.
static class JexlException.Method
          Thrown when a method or ctor is unknown, ambiguous or inaccessible.
static class JexlException.Parsing
          Thrown when parsing fails.
static class JexlException.Property
          Thrown when a property is unknown.
protected static class JexlException.Return
          Thrown to return a value.
static class JexlException.Tokenization
          Thrown when tokenization fails.
static class JexlException.Variable
          Thrown when a variable is unknown.
 
Field Summary
protected  JexlInfo info
          The debug info.
protected  JexlNode mark
          The point of origin for this exception.
static String NULL_OPERAND
          A marker to use in NPEs stating a null operand error.
 
Constructor Summary
JexlException(JexlInfo dbg, String msg)
          Creates a new JexlException.
JexlException(JexlInfo dbg, String msg, Throwable cause)
          Creates a new JexlException.
JexlException(JexlNode node, String msg)
          Creates a new JexlException.
JexlException(JexlNode node, String msg, Throwable cause)
          Creates a new JexlException.
 
Method Summary
protected  String detailedMessage()
          Accesses detailed message.
 String getInfo(int[] offsets)
          Gets information about the cause of this error.
 String getMessage()
          Detailed info message about this error.
protected  String parserError(String prefix, String expr)
          Formats an error message from the parser.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

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:
Constant Field Values
Constructor Detail

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 Detail

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


Copyright © 2001-2011 The Apache Software Foundation. All Rights Reserved.