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

2024-03-02

我的 GWT 应用程序在某个时刻抛出 JavaScriptException。此问题仅出现在 Internet Explorer 中(IE 8 和运行 IE7 模式的 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 的自定义使用
  • 让人们(或自己做)定期测试各种浏览器,这很容易
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

随机推荐