# Class ScriptException

java.lang.Object
java.lang.Throwable
java.lang.Exception
javax.script.ScriptException

All Implemented Interfaces:
  `Serializable`

public class ScriptException extends Exception
The generic `Exception` class for the Scripting APIs. Checked exception types thrown by underlying scripting implementations must be wrapped in instances of `ScriptException`. The class has members to store line and column numbers and filenames if this information is available.

Since:
  1.6
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`ScriptException(Exception e)`
Creates a `ScriptException` wrapping an `Exception` thrown by an underlying interpreter.
`ScriptException(String s)`
Creates a `ScriptException` with a String to be used in its message.
`ScriptException(String message, String fileName, int lineNumber)`
Creates a `ScriptException` with message, filename and linenumber to be used in error messages.
`ScriptException(String message, String fileName, int lineNumber, int columnNumber)`
`ScriptException` constructor specifying message, filename, line number and column number.

## Method Summary

Modifier and Type
Method
Description
`int`
`getColumnNumber()`
Get the column number on which an error occurred.
`String`
`getFileName()`
Get the source of the script causing the error.
`int`
`getLineNumber()`
Get the line number on which an error occurred.
`String`
`getMessage()`
Returns a message containing the String passed to a constructor as well as line and column numbers and filename if any of these are known.

### Methods declared in class Throwable

`addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`
Modifier and Type
Method
Description
`final void`
`addSuppressed(Throwable exception)`
Appends the specified exception to the exceptions that were suppressed in order to deliver this exception.
`Throwable`
`fillInStackTrace()`
Fills in the execution stack trace.
`Throwable`
`getCause()`
Returns the cause of this throwable or `null` if the cause is nonexistent or unknown.
`String`
`getLocalizedMessage()`
Creates a localized description of this throwable.
`StackTraceElement[]`
`getStackTrace()`
Provides programmatic access to the stack trace information printed by `Throwable.printStackTrace()`.
`final Throwable[]`
`getSuppressed()`
Returns an array containing all of the exceptions that were suppressed, typically by the `try`-with-resources statement, in order to deliver this exception.
`Throwable`
`initCause(Throwable cause)`
Initializes the cause of this throwable to the specified value.
`void`
`printStackTrace()`
Prints this throwable and its backtrace to the standard error stream.
`void`
`printStackTrace(PrintStream s)`
Prints this throwable and its backtrace to the specified print stream.
`void`
`printStackTrace(PrintWriter s)`
Prints this throwable and its backtrace to the specified print writer.
`void`
`setStackTrace(StackTraceElement[] stackTrace)`
Sets the stack trace elements that will be returned by `Throwable.getStackTrace()` and printed by `Throwable.printStackTrace()` and related methods.
`String`
`toString()`
Returns a short description of this throwable.

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`boolean`
`equals(Object obj)`
Indicates whether some other object is "equal to" this one.
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### ScriptException

public ScriptException(String s)
Creates a `ScriptException` with a String to be used in its message. Filename, and line and column numbers are unspecified.

Parameters:
  `s` - The String to use in the message.

### ScriptException

public ScriptException(Exception e)
Creates a `ScriptException` wrapping an `Exception` thrown by an underlying interpreter. Line and column numbers and filename are unspecified.

Parameters:
  `e` - The wrapped `Exception`.

### ScriptException

public ScriptException(String message, String fileName, int lineNumber)
Creates a `ScriptException` with message, filename and linenumber to be used in error messages.

Parameters:
  `message` - The string to use in the message
  `fileName` - The file or resource name describing the location of a script error causing the `ScriptException` to be thrown.
  `lineNumber` - A line number describing the location of a script error causing the `ScriptException` to be thrown.

### ScriptException

public ScriptException(String message, String fileName, int lineNumber, int columnNumber)
`ScriptException` constructor specifying message, filename, line number and column number.

Parameters:
  `message` - The message.
  `fileName` - The filename
  `lineNumber` - the line number.
  `columnNumber` - the column number.

## Method Details

### getMessage

public String getMessage()
Returns a message containing the String passed to a constructor as well as line and column numbers and filename if any of these are known.

Overrides:
  `getMessage` in class `Throwable`
Returns:
  The error message.

### getLineNumber

public int getLineNumber()
Get the line number on which an error occurred.

Returns:
  The line number. Returns -1 if a line number is unavailable.

### getColumnNumber

public int getColumnNumber()
Get the column number on which an error occurred.

Returns:
  The column number. Returns -1 if a column number is unavailable.

### getFileName

public String getFileName()
Get the source of the script causing the error.

Returns:
  The file name of the script or some other string describing the script source. May return some implementation-defined string such as <unknown> if a description of the source is unavailable.