处理JavaScript中的applet异常

时间:2015-02-19 11:49:01

标签: java javascript applet

我的webapp使用Java applet,其方法可能会抛出异常。 applet的典型方法如下所示。

public boolean doSomething() throws PrivilegedActionException {
    return AccessController.doPrivileged(new PrivilegedExceptionAction<Boolean>(){
        @Override
        public Boolean run() throws PrivilegedActionException {

            try {
                // impl omitted
            } catch (SomeException e) {
                throw new CustomException(e, "someErrorCode");
            }
        }
    });
}

从applet抛出的异常类看起来像这个

public class CustomException extends PrivilegedActionException {
    String errorCode;

    public CustomException(Throwable t, String errorCode) {
        super(t);
        this.errorCode = errorCode
    }
}

当从JavaScript调用此applet方法时,如果抛出异常,我需要检索errorCode属性

try {
     document.myApplet.doSomething();
} catch (err) {
     console.log(err);
}

但是,如果我检查err,它似乎是String,表示异常类的名称。我希望它是Error的一个实例,并希望能够使用errorCode检索例外err.errorCode

如何从applet转换为JavaScript对象抛出异常,是否可以获得更多细节而不仅仅是异常类的名称?

0 个答案:

没有答案