Class JavaScriptException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
com.google.gwt.core.client.impl.JavaScriptExceptionBase
com.google.gwt.core.client.JavaScriptException
All Implemented Interfaces:
Serializable

public final class JavaScriptException extends com.google.gwt.core.client.impl.JavaScriptExceptionBase
Any JavaScript exceptions occurring within JSNI methods are wrapped as this class when caught in Java code. The wrapping does not occur until the exception passes out of JSNI into Java. Before that, the thrown object remains a native JavaScript exception object, and can be caught in JSNI as normal.

The return value of Throwable.getStackTrace() may vary between browsers due to variations in the underlying error-reporting capabilities. When possible, the stack trace will be the stack trace of the underlying error object. If it is not possible to accurately report a stack trace, a zero-length array will be returned. In those cases where the underlying stack trace cannot be determined, Throwable.fillInStackTrace() can be called in the associated catch block to create a stack trace corresponding to the location where the JavaScriptException object was created.

 try {
   nativeMethod();
 } catch (JavaScriptException e) {
   if (e.getStackTrace().length == 0) {
     e.fillInStackTrace();
   }
 }
 
See Also:
  • Constructor Details

    • JavaScriptException

      public JavaScriptException(Object e)
      Parameters:
      e - the object caught in JavaScript that triggered the exception
    • JavaScriptException

      public JavaScriptException(Object e, String description)
      Parameters:
      e - the object caught in JavaScript that triggered the exception
      description - to include in getMessage(), e.g. at the top of a stack trace
    • JavaScriptException

      public JavaScriptException(String name, String description)
    • JavaScriptException

      protected JavaScriptException(String message)
      Used for testing instantiations.
      Parameters:
      message - the detail message
  • Method Details

    • isThrownSet

      public boolean isThrownSet()
      Returns true if a thrown object is not set for the exception.
    • getThrown

      public Object getThrown()
      Returns the original thrown object from javascript; may be null.
    • getDescription

      public String getDescription()
      Returns the original JavaScript message of the exception; may be null.
    • getException

      @Deprecated public JavaScriptObject getException()
      Deprecated.
      deprecated in favor for getThrown() and isThrownSet()
      Returns the original JavaScript the exception; may be null.
    • getMessage

      public String getMessage()
      Overrides:
      getMessage in class Throwable
    • getName

      public String getName()
      Returns the original JavaScript type name of the exception; may be null.