Package org.apache.commons.jexl2
Class JexlException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.lang.RuntimeException
-
- org.apache.commons.jexl2.JexlException
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
JexlException.Cancel
,JexlException.Method
,JexlException.Parsing
,JexlException.Property
,JexlException.Return
,JexlException.Tokenization
,JexlException.Variable
public class JexlException extends java.lang.RuntimeException
Wraps any error that might occur during interpretation of a script or expression.- Since:
- 2.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description 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
Fields Modifier and Type Field Description protected JexlInfo
info
The debug info.protected JexlNode
mark
The point of origin for this exception.static java.lang.String
NULL_OPERAND
A marker to use in NPEs stating a null operand error.
-
Constructor Summary
Constructors Constructor Description JexlException(JexlInfo dbg, java.lang.String msg)
Creates a new JexlException.JexlException(JexlInfo dbg, java.lang.String msg, java.lang.Throwable cause)
Creates a new JexlException.JexlException(JexlNode node, java.lang.String msg)
Creates a new JexlException.JexlException(JexlNode node, java.lang.String msg, java.lang.Throwable cause)
Creates a new JexlException.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
detailedMessage()
Accesses detailed message.java.lang.String
getInfo(int[] offsets)
Gets information about the cause of this error.java.lang.String
getMessage()
Detailed info message about this error.protected java.lang.String
parserError(java.lang.String prefix, java.lang.String expr)
Formats an error message from the parser.
-
-
-
Field Detail
-
NULL_OPERAND
public static final java.lang.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, java.lang.String msg)
Creates a new JexlException.- Parameters:
node
- the node causing the errormsg
- the error message
-
JexlException
public JexlException(JexlNode node, java.lang.String msg, java.lang.Throwable cause)
Creates a new JexlException.- Parameters:
node
- the node causing the errormsg
- the error messagecause
- the exception causing the error
-
JexlException
public JexlException(JexlInfo dbg, java.lang.String msg)
Creates a new JexlException.- Parameters:
dbg
- the debugging information associatedmsg
- the error message
-
JexlException
public JexlException(JexlInfo dbg, java.lang.String msg, java.lang.Throwable cause)
Creates a new JexlException.- Parameters:
dbg
- the debugging information associatedmsg
- the error messagecause
- the exception causing the error
-
-
Method Detail
-
detailedMessage
protected java.lang.String detailedMessage()
Accesses detailed message.- Returns:
- the message
- Since:
- 2.1
-
parserError
protected java.lang.String parserError(java.lang.String prefix, java.lang.String expr)
Formats an error message from the parser.- Parameters:
prefix
- the prefix to the messageexpr
- the expression in error- Returns:
- the formatted message
- Since:
- 2.1
-
getInfo
public java.lang.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 java.lang.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 classjava.lang.Throwable
- Returns:
- this error as a string
-
-