開発者ドキュメント

JSF 2.0のリソース(ライブラリ)

JSF 2.0では、CSSや画像、JavaScriptなどのすべてのWebリソースファイルは、Webアプリケーションのルート( “WEB-INF`と同じフォルダレベル)の下に”

resources

“フォルダに置く必要があります。

“resources”フォルダの下の

サブフォルダ

は ”

library

“または ”

project theme

“と見なされ、後で `library`属性でそれらの” resources “を参照することができます。この新しいJSFリソース管理メカニズムは本当に便利です。開発者は “テーマ/ライブラリ”または “バージョン管理”によってWebリソースを簡単に変更できます。

下記の例を参照してください。


Figure 1-0:JSF2プロジェクトフォルダ構造の例.



1.通常の例

JSF 2.0で ”

resources

“と ”

library

“を使用した例をいくつか示します。

  1. CSSファイルを含める –

    h:outputStylesheet

<h:outputStylesheet library = "theme1" name = "css/style.css"/>

+ HTML出力…​

+

<link type = "text/css" rel = "stylesheet"
   href = "/JavaServerFaces/faces/javax.faces.resource/css/style.css?ln = theme1"/>
  1. 画像を表示する –

    h:graphicImage

<h:graphicImage library = "theme1" name = "img/sofa.png"/>

+ HTML出力…​

+

<img src = "/JavaServerFaces/faces/javax.faces.resource/img/sofa.png?ln = theme1"/>
  1. JavaScriptを含める –

    h:outputScript

<h:outputScript library = "theme1" name = "js/hello.js"/>

HTML出力…​

+

<script type = "text/javascript"
   src = "/JavaServerFaces/faces/javax.faces.resource/js/hello.js?ln = theme1">

2.バージョン管理の例


Figure 1-0

を参照して、 ”

library

“フォルダの正規表現 `\ d +(__ \ d +)

`に一致する ”

version ** “フォルダを作成し、デフォルトのJSF `ResourceHandler`は常に表示する。


P.Sプロジェクトが図1-0の構造であると仮定します

CSSファイルを含める –

h:outputStylesheet

<h:outputStylesheet library="default" name="css/style.css"/>



default

“テーマにはバージョン ”

1

0


“と ”

20

“が含まれているため、JSFは常に最高のバージョンからリソースを取得し、リソースの最後にバージョンを追加します。

HTML出力を参照してください:

<link type="text/css" rel="stylesheet"
   href="/JavaServerFaces/faces/javax.faces.resource/css/style.css?ln=default&v=2__0"/>

ありがとう

リンク://jsf2/resources-library-in-jsf-2-0/#comment-85218[コメント、ガイドと修正]のためのhttp://balusc.blogspot.com/[BalusC]ありがとうございました。以前の誤解を招くようなガイド。

参考文献

JSFリソースライブラリとその使用方法は?]。

http://docs.oracle.com/javaee/6/api/javax/faces/application/ResourceHandler.html

[JSF

ResourceHandler JavaDoc]。

https://blogs.oracle.com/rlubke/entry/jsf


2

0

new

feature5[JSF 2.0 New

フィーチャープレビューシリーズ(パート2.1):リソース]

モバイルバージョンを終了