1
  1. GWT 動的 Web プロジェクトがあり、.war ファイルを生成します
  2. localhost の Tomcat でテストしたところ、問題なく動作しました。
  3. Amazon Web Services、Apache Tomcat 6 を実行する Elastic Beanstalk にアップロードします。
  4. デプロイされたバージョンを AWS で実行すると、サーブレットが存在しないように見つかりません
  5. 新しい GWT プロジェクトで試してみましたが、まだ機能しません:「サーブレットが見つかりません」

私はちょっと立ち往生しています。これが GWT の問題なのか、それとも AWS-Elastic Beanstalk に問題があるのか​​はわかりません。

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

4

1 に答える 1

3

それで、多くのテストなどを行った後、解決策を見つけました:

Tomcat 6 は Elastic Beanstalk の内部で実行されているものであり、デフォルトでは、XYZ.war ファイルを Tomcat にアップロードすると、context-url は (context-root)/XYZ になります。MyWebProject.war という名前の war をアップロードしていたので、Tomcat には (context-root)/XYZ にデプロイされますが、Elastic Beanstalk には YOUR_URL.elasticbeanstalk.com にデプロイされます。

これにより、明らかに web.xml が非常に奇妙な方法で混乱するため、要約すると次のようになります。

XYZ.war の名前を ROOT.war に変更してアップロードします。これで問題は解決するはずです。

于 2012-11-22T23:38:34.257 に答える