すべての権利、私は仕事からいくつかの時間を引っ張り、フレームワークがこれを行う方法を検討します。 Struts 2には、静的コンテンツを提供する実装があります。これは、構成ファイルstruts.propertiesで、プロパティーstruts.serve.staticによって構成されます。
そのプロパティは、真へのパス/支柱/または/静的/はによって提供されますとで始まり、JSPページ内の静的コンテンツ(javascript、CSS、イメージなど)に設定されている場合Struts FilterDispatcherと他のクラスはDefaultStaticContentLoaderと呼ばれます。例えば
:
<script language="JavaScript" type="text/javascript" src="struts/someScript.js"></script>
<script language="JavaScript" type="text/javascript" src="static/otherScript.js"></script>
このJavaScriptファイルの両方がフィルターとContentLoaderによって提供されます。 org.apache.struts2.staticとテンプレート:
デフォルトでContentLoaderクラスはStrutsの2コアJAR内の2つのフォルダに要求されたファイルを検索します。
は、今そこにあなたが他の場所で検索するContentLoaderを作るための方法だと、それはこのように、フィルタのparamsにweb.xmlファイルで構成されています:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
<init-param>
<param-name>packages</param-name>
<param-value>insert.your.package.with.static.content.here</param-value>
</init-param>
</filter>
それは見つけるために私に長い時間がかかりましたこれは、この機能に関する多くの情報はありません。このドキュメントは、Struts2 APIのFilterDispacherクラスhereの「静的コンテンツの提供」のところにあります。
あなたはそれが便利だと思っています。それは素晴らしい機能であり、とてもうまく実装されています。
-1これは邪魔です。これらは、クライアントのブラウザから直接ダウンロードされた静的リソースであり、jarファイルにスローすることはできません。サーバーが使用できるクラスパスリソースについて考えています。 – Neil