Class RhinoException

All Implemented Interfaces:
Serializable
Direct Known Subclasses:
EcmaError, EvaluatorException, JavaScriptException

public abstract class RhinoException extends RuntimeException
The class of exceptions thrown by the JavaScript engine.
See Also:
  • Method Details

    • getMessage

      public final String getMessage()
      Overrides:
      getMessage in class Throwable
    • details

      public String details()
    • sourceName

      public final 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(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:
      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:
      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:
      IllegalStateException - if the method is called more then once.
    • lineSource

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

      public final void initLineSource(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:
      IllegalStateException - if the method is called more then once.
    • getScriptStackTrace

      public 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 String getScriptStackTrace(int limit, String functionName)
      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. The optional "limit" parameter limits the number of stack frames returned. The "functionName" parameter will exclude any stack frames "below" the specified function on the stack.
      Parameters:
      limit - the number of stack frames returned
      functionName - the name of a function on the stack -- frames below it will be ignored
      Returns:
      a script stack dump
      Since:
      1.8.0
    • getScriptStackTrace

      @Deprecated public String getScriptStackTrace(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
    • getScriptStack

      public ScriptStackElement[] getScriptStack(int limit, String hideFunction)
      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.
      Parameters:
      limit - the number of stack frames returned, or -1 for unlimited
      hideFunction - the name of a function on the stack -- frames below it will be ignored, or null
      Returns:
      the script stack for this exception
      Since:
      1.8.0
    • printStackTrace

      public void printStackTrace(PrintWriter s)
      Overrides:
      printStackTrace in class Throwable
    • printStackTrace

      public void printStackTrace(PrintStream s)
      Overrides:
      printStackTrace in class 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:
    • 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)). Use "setStackStyle" to select between more than just the "Mozilla" and "Rhino" formats.
      Parameters:
      flag - whether to render stacks in Mozilla/Firefox style
      Since:
      1.7R3
      See Also:
    • setStackStyle

      public static void setStackStyle(StackStyle style)
      Specify the stack style to use from between three different formats: "Rhino" (the default), "Mozilla", and "V8." See StackStyle for information about each.
      Parameters:
      style - the style to select -- an instance of the StackStyle class
      Since:
      1.8.0
      See Also:
    • getStackStyle

      public static StackStyle getStackStyle()
      Return the current stack style in use. Return the current stack style in use.