org.mozilla.javascript

## Class RhinoException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - java.lang.RuntimeException
      - - 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

Methods
`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 `ScriptStackElement`s.
`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

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, 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 `ScriptStackElement`s. 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`