我在开发模式下从eclipse开始我的GWT应用程序 它在Chrome中启动很好但在Firefox中我得到一个空窗口 我在控制台或开发控制台中没有错误 当我启动Firebug时,我可以看到登录屏幕的所有元素(html / css等)。
我还尝试将gwt.xml中的用户代理设置为:
<set-property name="user.agent" value="gecko1_8"/>
但这没有帮助。
为什么会这样?我该如何解决?
答案 0 :(得分:2)
通常它是由损坏的缓存引起的。停止应用程序服务器并从war目录中删除GWT编译输出。运气好的话,您重新编译的Web App现在将按预期运行。您很快就会熟悉这个过程,因为它是Eclipse GWT插件的烦人特征。值得一提的是IntelliJ IDE,因为它是一个优秀的编译器,并没有遭受这些令人费解的怪癖,但GWT支持需要终极版($)。
典型的war
目录具有以下结构:
要删除的目录是mywebapp
。这是WebApps GWT模块(.gwt.xml)的完全限定路径,或者更常见的是,它被重命名为同一模块中定义的rename
属性。例如,MyWebApp.gwt.xml
可能如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<module rename-to="mywebapp">
<entry-point class="com.mywebsite.client.MyWebAppEntry"/>
<source path="client"/>
</module>
如果未定义rename-to属性,GWT编译器会在WAR目录中放置一个名为com.mywebsite.MyWebApp
的目录。但是因为我们定义了rename属性,所以GWT编译器通过从模块xml中获取缩短的名称来简化输出。
如果Eclipse抱怨目录结构与项目不同步,请不要忘记刷新项目。