GWT应用程序仅在IE中抛出“JavaScriptException”,堆栈跟踪没有任何有用的信息

我的GWT应用程序在某个时刻抛出JavaScriptException.此问题仅发生在Internet Explorer(运行IE7模式的IE 8和IE 8)中.

堆栈跟踪如下:

com.google.gwt.core.client.JavaScriptException: (Error): Invalid argument.
 number: -2147024809
 description: Invalid argument.
com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:195)
com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:120)
com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:507)
com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:264)
com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
com.google.gwt.core.client.impl.Impl.apply(Impl.java)
com.google.gwt.core.client.impl.Impl.entry0(Impl.java:188)
sun.reflect.GeneratedMethodAccessor51.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
java.lang.reflect.Method.invoke(Unknown Source)
com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:157)
com.google.gwt.dev.shell.BrowserChannel.reactToMessages(BrowserChannel.java:1668)
com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:401)
com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:222)
java.lang.Thread.run(Unknown Source)

调试至少是不可能的.谷歌告诉我,这可能是属性设置不正确(即setWidth(“190px!”)之类的坏字符)或将宽度设置为0px或完全是其他东西.

由于问题只出现在IE中,我尝试使用IE开发人员工具进行调试,但却没有提出任何问题.

我该如何正确调试?

最佳答案
这也发生在我身上,这是一场噩梦.正确使用一些GIT / SVN / CVS无论如何真正保存这些情况,达到“它工作的地方”是非常好的.那你现在能做什么:

>暂时摆脱所有自定义CSS,看看会发生什么(只留下GWT的普通默认CSS)
>在外部服务器上调试,那不是那么慢
>尝试重现“特定点”并注释掉任何相关的行
>正确检查生成的站点(IE的一些类似firebug的工具,我希望这样的东西存在)
>如上所述,使用漂亮/详细的输出样式
>从GWT读取生成的JavaScript从未解决我的问题:(通常是CSS相关的东西或来自GWT的DOM的自定义用法
>让人们(或自己动手)定期测试各种浏览器,它只是nobrainer

转载注明原文:GWT应用程序仅在IE中抛出“JavaScriptException”,堆栈跟踪没有任何有用的信息 - 代码日志