1

私は Ruby と Java の両方の世界で働いています。サブドメイン (または CDN) にあるアセット (画像、CSS など) を簡単に参照できるようにするさまざまな機能を提供するmerb-assetsプロジェクトにいくらか触発されました。

私はJavaで同じことをしたい:

  • 開発とテストでは、JSTL<c:url>または Struts 2 の<s:url value=""/>タグを使用してアセットを参照したいと考えています。
  • しかし本番環境では、これらのアセットのほとんどを別のサブドメイン (または CDN) に移動したいと考えています。

これに役立つ taglibs (または他の方法論) はありますか? orタグを挿入するたびに、ビューに<c:ifand テストを散らかしたくはありません。localhost<img><link>

Struts 2 + JSP を使用しています。

4

1 に答える 1

1

Struts 2についてはよくわかりませんが、Maven2の機能を使用するソリューションを考えています...したがって、実際にMaven2を使用してアプリケーションを構築している場合は、リソースフィルターを使用して問題を解決できます。およびプロファイル機能。

リソースのフィルタリング:リソースファイル(この場合はJSPファイル)をフィルタリングするようにMaven2に依頼できます。フィルタとは、すべての${xxx}をそれらの値で置き換えることを意味します。これは、パラメータ(たとえば、$ {domain.url})を必要な値( "localhost"、 "http:// ...")に置き換えるのに役立ちます。

次に、「開発テスト」と「本番」の2つのプロファイルを定義します。各プロファイルは、これらのアセットに対して独自のドメインを定義します。たとえば、開発テストでは、ドメインを「localhost」として定義できます。本番環境では、ドメインは「http://....」になります。

これで問題が解決するかどうかはわかりませんが、試してみてください:o)

参照:フィルターリソース: http: //maven.apache.org/plugins/maven-resources-plugin/examples/filter.html プロファイル: http: //maven.apache.org/guides/introduction/introduction-to-profiles。 html

于 2008-10-13T14:45:06.107 に答える