5

13 個のモジュールを持つ大きなアプリケーションがあります。お客様の要件に応じて、コア モジュールとお客様固有のモジュールを展開できるはずです。アプリを複数の戦争に分割する予定です。ここでの問題は、header.jsp、error.jsp などの一般的な jsp があることです。一般的な jsp をコア戦争で保持し、残りの戦争でそれを使用できるようにする方法はありますか、またはこれらをコピーする必要がありますjsp は、ビルド プロセスの個々の戦争にあります。CSS と Javascript ファイルは複数の war で ear パッケージで共有できることは知っていますが、jsp についてはわかりません。

4

1 に答える 1

4

良い質問。サーブレット コンテナーの構成方法に大きく依存しますが、答えが「はい」であることを喜んでお聞きします。

<c:import>これは、次のように定義されたオプションのcontext属性を持つJSTL タグを使用して行われます。

リソースをインポートする他のローカル Web アプリケーションのコンテキストの名前 (/ で始まる)。

たとえば、webapp A を context root の下に/Aデプロイし、webapp B を の下/Bにデプロイしたとします。A の JSP は、次x.jspを使用して B からインクルードできます。

<c:import context="/B" url="x.jsp"/>

これは非常に素晴らしいことですが、サーブレット コンテナーのセキュリティ メカニズムを通過する必要があり、操作が許可されない場合があります。たとえば、Tomcat では、crossContext属性を に設定する必要がありますtrue

于 2010-09-27T15:49:33.453 に答える