JSF2のリソースアクセス機能
まあ、いまさらですがJSF2ではリソース定義及びそれに対するアクセスの標準的な仕組みが存在します。ここで言うリソースはJavascriptやCSS等です。
例えばsample-webという名前がコンテキストルートの場合その直下にresourcesというフォルダを作成し、javascriptならば「javascript」CSSならば「css」というフォルダを作成し、ファイルを以下のように作成します。
sample-web
+resources
+css
style.css
+javascript
sample.js
あとはJSFのViewで次のように記述すれば勝手に読み込んでくれます。
... <h:head> <h:outputStylesheet library="css" name="style.css" /> <h:outputScript library="javascript" name="sample.js" /> </h:head> ...
outputStylesheetでCSSファイルを、outputScriptでJavascriptを読み込んでいます。両方のタグにlibraryという属性があると思いますが、これがresource配下のフォルダ名と一致している必要があるようです。
outputStylesheetならばresourcesフォルダ以下のcssフォルダ(library="css")直下のcssファイル(name="style.css")を読み込むという処理になるようです。
Javascriptも同様。
cssフォルダ配下にmystyleというフォルダが存在しその配下のcssファイルを読み込む場合はlibrary="css/mystyle"とすれば読み込むことが可能です。