1

Eclipse をしばらく使用していますが、(コンパイル後に)「war」フォルダーの内容を Mac の「Sites」フォルダーにコピーすると、GWT プロジェクトが突然実行されなくなりました。これはまったく問題なく機能していましたが、RPC エラーが発生し続けます -

サーバーへの接続中にエラーが発生しました。ネットワーク接続を確認して、もう一度お試しください。

ここに画像の説明を入力

私は今、新しい Google Web アプリケーション プロジェクトを作成しているだけです (あいさつサンプルが組み込まれています)。これは、Eclipse 内でデバッグまたは実行 (Jetty を使用するとデフォルトになります) を実行している場合でもうまく機能しますが、戦争をコピーするときは機能しません。サイトへ。

編集 - 推奨事項に従って、アプリを Tomcat7 に移植し、正常に動作するようにしました。なぜMacで動作していたのかはまだわかりませんが、今では構成に満足しています.

Appengine バージョン:1.7.2
GWT バージョン:2.4.0
Eclipse バージョン:4.2(juno) Java SE 6 (MacOS X)

どんな助けでも大歓迎です!

4

1 に答える 1

1

Mac の「Sites」フォルダでは、Apache Web サーバー (http://httpd.apache.org/) を使用してコンテンツを提供できます。Apache Web サーバーは、ファイルを配布するのに十分スマートであり、さまざまなユーザーと対話する方法を知っています。サーバー上でアプリケーションを実行できる「モジュール」。つまり、少なくとも既定の構成では、ユーザーの Sites フォルダーから提供されるファイルはアプリケーションとして実行されません。

さらに、デフォルトのサンプル プロジェクトは Java で記述されており、サーブレット コンテナで実行することを意図しています。多くのサーブレット コンテナー (Tomcat、Jetty、JBoss) がありますが、Apache HTTP Server はその 1 つではありません。Apache が Tomcat と簡単に通信できるようにするモジュールが少なくとも 1 つはありますが、Apache のモジュールとして実行されるサーブレット コンテナーについては聞いたことがありません。

その結果、静的コンテンツ (html、コンパイルされた JavaScript、スタイルと画像) が表示されますが、サンプル アプリがサーバーと通信しようとすると失敗します。Apache は実際にはサーバーを実行するように設計されていないためです。サンプル アプリケーションの一部。代わりに、Tomcat または Jetty のコピーをダウンロードし、war フォルダーを webapps/ ディレクトリにコピーして、そこからサービスを提供することを検討してください。

于 2012-09-28T03:01:43.710 に答える