org.mozilla.javascript
Class RhinoException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.lang.RuntimeException
              extended by org.mozilla.javascript.RhinoException
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
EcmaError, EvaluatorException, JavaScriptException

public abstract class RhinoException
extends java.lang.RuntimeException

The class of exceptions thrown by the JavaScript engine.

See Also:
Serialized Form

Method Summary
 int columnNumber()
          The column number of the location of the error, or zero if unknown.
 java.lang.String details()
           
 java.lang.String getMessage()
           
 ScriptStackElement[] getScriptStack()
          Get the script stack of this exception as an array of ScriptStackElements.
 java.lang.String getScriptStackTrace()
          Get a string representing the script stack of this exception.
 java.lang.String getScriptStackTrace(java.io.FilenameFilter filter)
          Deprecated. the filter argument is ignored as we are able to recognize script stack elements by our own. Use #getScriptStackTrace() instead.
 void initColumnNumber(int columnNumber)
          Initialize the column number of the script statement causing the error.
 void initLineNumber(int lineNumber)
          Initialize the line number of the script statement causing the error.
 void initLineSource(java.lang.String lineSource)
          Initialize the text of the source line containing the error.
 void initSourceName(java.lang.String sourceName)
          Initialize the uri of the script source containing the error.
 int lineNumber()
          Returns the line number of the statement causing the error, or zero if not available.
 java.lang.String lineSource()
          The source text of the line causing the error, or null if unknown.
 void printStackTrace(java.io.PrintStream s)
           
 void printStackTrace(java.io.PrintWriter s)
           
 java.lang.String sourceName()
          Get the uri of the script source containing the error, or null if that information is not available.
static void useMozillaStackStyle(boolean flag)
          Tell subclasses of RhinoException whether to use the Mozilla/Firefox style of rendering script stacks (functionName()@fileName:lineNumber) instead of Rhino's own Java-inspired format ( at fileName:lineNumber (functionName))
static boolean usesMozillaStackStyle()
          Returns true if subclasses of RhinoException use the Mozilla/Firefox style of rendering script stacks (functionName()@fileName:lineNumber) instead of Rhino's own Java-inspired format ( at fileName:lineNumber (functionName)).
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, initCause, printStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getMessage

public final java.lang.String getMessage()
Overrides:
getMessage in class java.lang.Throwable

details

public java.lang.String details()

sourceName

public final java.lang.String sourceName()
Get the uri of the script source containing the error, or null if that information is not available.


initSourceName

public final void initSourceName(java.lang.String sourceName)
Initialize the uri of the script source containing the error.

Parameters:
sourceName - the uri of the script source responsible for the error. It should not be null.
Throws:
java.lang.IllegalStateException - if the method is called more then once.

lineNumber

public final int lineNumber()
Returns the line number of the statement causing the error, or zero if not available.


initLineNumber

public final void initLineNumber(int lineNumber)
Initialize the line number of the script statement causing the error.

Parameters:
lineNumber - the line number in the script source. It should be positive number.
Throws:
java.lang.IllegalStateException - if the method is called more then once.

columnNumber

public final int columnNumber()
The column number of the location of the error, or zero if unknown.


initColumnNumber

public final void initColumnNumber(int columnNumber)
Initialize the column number of the script statement causing the error.

Parameters:
columnNumber - the column number in the script source. It should be positive number.
Throws:
java.lang.IllegalStateException - if the method is called more then once.

lineSource

public final java.lang.String lineSource()
The source text of the line causing the error, or null if unknown.


initLineSource

public final void initLineSource(java.lang.String lineSource)
Initialize the text of the source line containing the error.

Parameters:
lineSource - the text of the source line responsible for the error. It should not be null.
Throws:
java.lang.IllegalStateException - if the method is called more then once.

getScriptStackTrace

public java.lang.String getScriptStackTrace()
Get a string representing the script stack of this exception. If optimization is enabled, this includes java stack elements whose source and method names suggest they have been generated by the Rhino script compiler.

Returns:
a script stack dump
Since:
1.6R6

getScriptStackTrace

public java.lang.String getScriptStackTrace(java.io.FilenameFilter filter)
Deprecated. the filter argument is ignored as we are able to recognize script stack elements by our own. Use #getScriptStackTrace() instead.

Get a string representing the script stack of this exception.

Parameters:
filter - ignored
Returns:
a script stack dump
Since:
1.6R6

getScriptStack

public ScriptStackElement[] getScriptStack()
Get the script stack of this exception as an array of ScriptStackElements. If optimization is enabled, this includes java stack elements whose source and method names suggest they have been generated by the Rhino script compiler.

Returns:
the script stack for this exception
Since:
1.7R3

printStackTrace

public void printStackTrace(java.io.PrintWriter s)
Overrides:
printStackTrace in class java.lang.Throwable

printStackTrace

public void printStackTrace(java.io.PrintStream s)
Overrides:
printStackTrace in class java.lang.Throwable

usesMozillaStackStyle

public static boolean usesMozillaStackStyle()
Returns true if subclasses of RhinoException use the Mozilla/Firefox style of rendering script stacks (functionName()@fileName:lineNumber) instead of Rhino's own Java-inspired format ( at fileName:lineNumber (functionName)).

Returns:
true if stack is rendered in Mozilla/Firefox style
Since:
1.7R3
See Also:
ScriptStackElement

useMozillaStackStyle

public static void useMozillaStackStyle(boolean flag)
Tell subclasses of RhinoException whether to use the Mozilla/Firefox style of rendering script stacks (functionName()@fileName:lineNumber) instead of Rhino's own Java-inspired format ( at fileName:lineNumber (functionName))

Parameters:
flag - whether to render stacks in Mozilla/Firefox style
Since:
1.7R3
See Also:
ScriptStackElement