7

我正在使用 JRE6 中内置的 JSR-223 脚本引擎执行 Javascript。Javascripts 能够访问 Java 代码和对象。当从 JavaScript 执行的 Java 代码抛出异常时,ScriptEngine 将抛出 ScriptException。

我希望能够访问导致 Javascript 抛出异常的 Java 异常。

从 Javascript 中,我可以捕获异常并查看异常的 javaException 字段:

try
{
  .
}
catch (e)
{
  e.javaException.printStackTrace();
}

但是,我无法控制 Javascript,只能从 ScriptEngine 执行它们。有没有办法从 ScriptException 中获取“内部”Java 异常?

我相信如果我使用的是 Rhino,RhinoException 会有一个 Java 异常可用。RhinoException 在 JSR-223 API 中不可用。

4

1 回答 1

0

你试过e.getCause()吗?

于 2011-10-25T12:43:31.757 回答