1

2 つの動的 Web プロジェクトがあります。

  • cms
  • デモ

Struts2 を使用する プロジェクト Demo でプロジェクト CMS のアクションを使用する必要があります。

デモの「Java Build Path」構成の「Project」タブで、CMS プロジェクトを追加しました。

ここに画像の説明を入力

struts.xml私が持っているデモの

<action name="hello" class="cms.helloworld.action.HelloWorldAction" method="execute">

パッケージcms.helloworld.actionは CMS プロジェクト パッケージです。

ここに画像の説明を入力

Eclipseはそれを正しく認識しています。実際、クラス名をctrl+クリックすると、正しいJavaファイルが開きます。right

ここで、デモの展開アセンブリ構成に CMS プロジェクトを追加して、Tomcat も相対クラスを見つけられるようにしました。

ここに画像の説明を入力

しかし、Tomcat サーバーでプロジェクトを実行すると、ログには次のように表示されます。

Grave: Dispatcher の初期化に失敗しました。構成を読み込めません。- アクション

原因: アクション クラス [cms.helloworld.action.HelloWorldAction] が見つかりません

CMS プロジェクトでアクションが見つかりません。

私は何を間違っていますか?

4

1 に答える 1

1

2 つのプロジェクトを 1 つにマージして、 に配置する必要がありstruts.xmlますsrc。私が覚えている限りでは、Eclipse は別の Web プロジェクトをモジュールとして参照できません。つまり、WebContentビルド中に手動でコピーする必要があります。そのため、他の Web プロジェクトを参照すべきではなく、メイン プロジェクトは Java EE プロジェクトではありません。また、Java EE プロジェクトを開発する場合、Tomcat サーバーは Java EE プロジェクトを処理できないことも考慮する必要があります。この目的のためには、フル機能の Java EE アプリケーション サーバーを選択する必要があります。たった 1 つの Web モジュールに対するオプションしかない場合でも。

于 2013-08-07T07:50:40.080 に答える