私は典型的な方法で JSF プロジェクトをセットアップしています。
myproject
|-- src/main/webapps
| |-- resources
| | |-- css
| | | |-- 3rdparty.css
| | |
| | |-- fonts
| | |
| | |-- myspecialfont.woff
| |
そして、私のJSF htmlで:
<h:outputStylesheet name="3rdparty.css" library="css"/>
アップグレードが必要な場合にディレクトリの一貫性を保つことができるため、これはうまく機能します。
ただし、この場合、3rdparty.css ファイルには相対参照が含まれています。
@font-face {
font-family: 'Lato';
src: url('../fonts/myspecialfont.woff');
}
h:outputStylesheet は使用する URI を構築するmywebapp/javax.faces.resource/3rdparty.css
ため、パスが を参照するようになるため、内部の相対参照が壊れますmywebapp/fonts/myspecialfont.woff
。
CSS を手動で変更することなく、この種の相対参照を処理するために、これらのローカルにホストされたサードパーティ ライブラリを JSF によって参照されたままにする良い方法はありますか?