0

Eclipse から開発モードで GWT アプリケーションを開始しています。
Chrome では正常に起動しますが、Firefox では空のウィンドウが表示されます。
コンソールまたは開発コンソールにエラーはありません。
Firebug を起動すると、ログイン画面のすべての要素 (html/css など) が表示されます。

また、gwt.xml のユーザー エージェントを次のように設定しようとしました。

<set-property name="user.agent" value="gecko1_8"/>

しかし、それは役に立ちませんでした。

なぜこれが起こるのですか?どうすれば修正できますか?

4

1 に答える 1

2

多くの場合、キャッシュの破損が原因です。アプリケーションサーバーを停止し、GWTでコンパイルされた出力をwarディレクトリから削除します。運が良ければ、再コンパイルされたWebアプリは期待どおりに実行されます。このプロセスはEclipseGWTプラグインの厄介な特性であるため、すぐに理解できるようになります。IntelliJ IDEは優れたコンパイラであり、これらの不可解な癖に悩まされていないため、ここで言及する価値がありますが、GWTサポートにはUltimate Edition($)が必要です。

一般的なwarディレクトリの構造は次のとおりです。

  • mywebapp /
  • WEB-INF /
  • index.html

削除するディレクトリは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がディレクトリ構造がプロジェクトと同期していないと文句を言う場合は、プロジェクトを更新することを忘れないでください。

于 2012-05-26T15:51:26.037 に答える