經過一些調試之後,我發現「com.google.gwt.event.shared.UmbrellaException:One或 捕獲了更多異常,請在調用方法時查看UmbrellaException#getCauses中的完整集:[nsIDOMEventListener :: handleEvent]」(在web模型)是由運行時空指針引起的。問題是爲什麼這種運行時空指針異常沒有在主機模型下拋出。實際上,打擊代碼不會拋出任何異常,甚至在我的筆記本電腦中出現警告彈出窗口(gwt 2.4 + java 7 64bit + ubuntu 12.04 64bit + eclipse 3.7)。任何人都知道如何強制eclipse拋出異常,每當JavaScriptObject指針發生運行時null。爲什麼不能檢測到JavascriptObject的運行時空指針?
public class GWTTest implements EntryPoint
{
public static class JsObj extends JavaScriptObject
{
protected JsObj()
{
}
public final native void setValue(String Value)/*-{
this.Value=Value;
alert(Value);
}-*/;
}
public void onModuleLoad()
{
JsObj jsObj = null;
jsObj.setValue("val");
}
}