1

ファイル システムから css ファイルなどの静的リソースをオーバーライドしてロードしましたjavax.faces.application.ResourceHandlerWrapperjavax.faces.application.ResourceWrapperこのリソース読み込みメカニズムが、ファイル システムから新しく読み込まれた css ファイルで参照されるリソースに対しても行われるようにするにはどうすればよいでしょうか? 助けてくれてありがとう。

4

1 に答える 1

2

#{resource}などのハードコードされたパスを使用する代わりに、CSSファイルのEL式を使用して動的に参照します/context/resources/someLibrary/somePath/someFile.ext

例えば

.foo {
    background-image: url(#{resource['someLibrary:somePath/foo.ext']})
}

.bar {
    background-image: url(#{resource['someLibrary:bar.ext']})
}

.baz {
    background-image: url(#{resource['somePath/baz.ext']})
}

.moo {
    background-image: url(#{resource['moo.ext']})
}

参照します

WebContent
 |-- resources
 |    |-- someLibrary
 |    |    |-- somePath
 |    |    |    `-- foo.ext
 |    |    `-- bar.ext
 |    |-- somePath
 |    |    `-- baz.ext
 |    `-- moo.ext
 :

このようにして、JSFのデフォルトのリソースハンドラーはそれらを正しいURLに置き換え/javax.faces.resource、リソースハンドラーも通過します。

于 2012-08-14T17:32:22.987 に答える