長い投稿で申し訳ありませんが、ここで直面している問題は私にとって非常に重要です。
GAE を使用し、そのデータストアとトランザクションを行う Eclipse GWT (2.0) Web アプリケーションがあります。一方で、この Web アプリケーションを Google App Engine 以外のインフラストラクチャにもデプロイできるようにしたいと考えています。したがって、別のサーブレット コンテナー (Tomcat 6) と別のデータストア (mySQL や MSSQL など、今のところは問題ありません) を使用して Web アプリをデバッグしたいと考えていました。
Tomcat を使用して Eclipse Web アプリをデバッグできるようにするには、Dynamic Web Projectファセットを実行する必要があります。そうでない場合、サーバー内で Eclipse に追加した新しいサーバーは、サポートされているアプリのリストで GWT モジュールを選択することを拒否します。そして、GWT Web Apps はそれを実行しないだけでなく、プロジェクトのファセットを変更することさえまったく許可しません! しかし、いくつかの関連するタグを .project ファイルに追加すると、Eclipse 内で新しいプロジェクト ファセットを追加できるようになることがわかりました。使用したタグは次のとおりです。
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>com.google.gwt.eclipse.core.gwtNature</nature>
<nature>org.eclipse.wst.common.project.facet.core.nature</nature>
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
<nature>org.eclipse.wst.jsdt.core.jsNature</nature>
<nature>com.google.appengine.eclipse.core.gaeNature</nature>
それで私はそれをしました、私はプロジェクトをEclipseの動的Webプロジェクトに「変える」ことができました。そうすることで、サーバー内のTomcat 6によって処理されるモジュールのリストに追加されるように準拠しました。これはまさに私が望んでいたことであり、App Engine または Tomcat で GWT Web アプリをデバッグするために、Eclipse で自由に 2 つのデバッグ構成を切り替えることができるようになりました。
問題は、Dynamic Web Project ファセットを追加すると、DataNucleus エンハンサーが妨げられることです。何らかの理由で、プロジェクトが動的 Web プロジェクトになると、エンハンサーが呼び出されなくなり、いくつかのクラスが強化されていないというエラー メッセージが表示されます。Google... App Engine... ORM クラスで遊んだり、ビルダーでエンハンサーをチェック/チェック解除したりしても、何も変わりません。エンハンサーの問題は、Tomcat と App Engine の両方のデバッグ構成に影響することに注意してください。
そこで、2つの解決策を考えていました。
(1) Google プラグインの DataNucleus エンハンサーを無効にして、自分で拡張を実行します。そこで、DataNucleus プラグインをインストールして、Eclipse プラグインに関するガイドに従って、プロジェクト固有の拡張機能を構成しました。彼らは、プロジェクトを右クリックすることで、特定のプロジェクトのファイルに対する DataNucleus サポートを有効にできると言います。残念ながら、Eclipse 用プラグインの最新バージョンをインストールした後、そのような右クリック メニューは表示されません! したがって、特定のプロジェクトで拡張機能を有効にしたいことをプラグインに伝える方法がありません! それはどれほどイライラしますか?? (プラグインをアンインストール/再インストールし、保留中の Eclipse の更新を多数実行しました...それでも右クリック メニューはありません。) DataNucleus 拡張機能を有効にする別の方法を知っている人はいますか? 今のところ、Eclipse 内でこのクロスサーブレット コンテナーのデバッグを実行できることが非常に重要であるため、かなり手動のトリックでも満足しています。
(2) GWT の公式 Web サイトhttp://code.google.com/webtoolkit/doc/latest/FAQ_DebuggingAndCompiling.html#How_do_I_use_my_own_server_in_hosted_mode_instead_of_GWT%27sからこのヒントを使用してください 。 .. ホスト モードが必要なため、GWT 2.0 の使用は許可されません。この回避策に関して、GWT 2.0で同様のことを行う方法があるかどうか知りたいですか?
GWT Web アプリを Eclipse 動的 Web プロジェクトに変換することは、アプリケーションの開発を進めるための理想的なソリューションです。上で述べたように、App Engine から Tomcat に、またはその逆に切り替えるのは非常に便利です。したがって、私は回避策 (2) よりも回避策 (1) を好みます。いずれにせよ、この 2 つの点のいずれかに関するヘルプやアドバイスは大歓迎です。
この非常に長い投稿を読んでいただきありがとうございます!