WebSphere Application Server Network Deployment, Version 6.0.x   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows

             目次と検索結果のパーソナライズ化

JavaServer Faces

JavaServer Faces (JSF) は、Java ベースの Web アプリケーシ ョンの開発を容易にするユーザー・インターフェース・フレームワークまた はアプリケーション・プログラミング・インターフェース (API) です。 WebSphere Application Server バージョン 6.0 は JavaServer Faces 1.0 をランタイム・レベルでサポートしています。このため、JSF を使用すると、ランタイム・バイナリーを Web アプリケーションに含める必要がなくなるため、Web アプリケーションのサイズが削減されます。

また、JSF ランタイムは以下を行います。

Sun JSF Reference Implementation は、WebSphere Application Server で JSF サポートに使用されるコードのファウンデーションを提供します。 ただし、オープン・ソースの API が Application Server ランタイムに組み込まれるときに 問題が起こる可能性があるため、Jakarta API への一部の依存が除去され、Application Server 固有のソリューションと置換されています。 例えば、Application Server ランタイムに組み込まれると、 これらのオープン・ソースの API は Application Server 内にインストールされたすべてのアプリケーションで使用可能なため、 バージョン管理、サポート、および法的な問題を引き起こします。 Application Server によって提供されるバージョンの JSF ランタイムは、 標準のランタイム・ライブラリーのロケーションにあり、 JSF API を活用するすべての Web アプリケーションに使用可能です。 JSF サーブレットのロードは、 ランタイムが Web アプリケーションでパッケージされるのと同じ方法で機能します。

次のオープン・ソース依存関係は、以下の他の API または社内向けバージョンと置換されます。 JSF 仕様は JavaServer Pages 標準タグ・ライブラリー (JSTL) を依存関係として必要とするため、 Jakarta からの JSTL の必要なバージョンは Application Server ランタイムで使用可能です。
図 1. Sun ベース JSF ランタイムからの現行外部 API 依存関係

図 2. 置換 API

JSF の仕様関連クラス (javax.faces.*) は、 jsf-api.jar という名の Java アーカイブ (JAR) ファイ ルにパッケージされています。JSF Sun Reference Implementation の IBM 修正バージョンは、 ws-jsf.jar という名の JAR ファイルにパッケージされています。 JavaServer Pages 標準タグ・ライブラリー (JSTL) への依存関係は、 その JAR ファイル (jstl.jar および standard.jar) が使用可能であることが必要なため、 これらの JAR ファイルは Application Server ランタイムで使用可能である必要があります。 jstl.jar および standard.jar ファイルは、 WebSphere Application Server インストール・イメージの lib ディレクトリーにあります。JSF JAR ファイルは、 標準 Application Server ランタイム・ディレクトリーにコピーする必要があります。

通常、この API/Framework を活用する Web アプリケーションは、JSF API およびインプリメンテーション JAR ファイルを Web アーカイブ (WAR) フ ァイル内に組み込みます。 この組み込みは、 これらの Web アプリケーションが WebSphere Application Server 内でデプロイおよび実行される場合には、 必要ありません。 必要となるのは、これらの JAR を、 WAR ファイルからのすべての JSTL JAR ファイルと共に除去することのみです。

Web アプリケーションが、内部に組み込まれた JSF または JSTL の独自の バージョンの使用を必要とする場合は、Web アプリケーションのクラス・ローダー・モードを変更してもかまいません。 デフォルトでは、これは PARENT_FIRST モードに設定されています。 この値を PARENT_LAST に変更すると、 JSF または JSTL クラスの Web アプリケーションを WebSphere の前にロードすることができます。

FacesAssert クラス

Sun Reference Implementation は、 Mozilla からのユーティリティー・クラスを使用し、メソッド・パラメータ ーに対してアサーション・スタイル呼び出しを実行します。 faces assert クラスは同等の機能を提供します。JDK 1.4 で使用可能なアサーション機能 を利用するというオプションは、 アサーション・コード・サポートをオンにするために JVM レベル・パラメー ターを提供する必要性があるため可能ではありません。 FacesAssert クラスには、静的メソッドのみがあり、ライフ・サイクルはありません。

FacesAssert
+ notEmpty ( [in] str : String ) : boolean
+ nonNull ( [in] isNull : Object ) : boolean
+ wsAssert ( [in] message : String ) : boolean
+ wsAssert ([in] argument : boolean , [in] message : String ) : boolean

FacesBeanUtils クラス

FacesBeanUtils クラスは、 Jakarta Commons BeanUtils API で使用されるメソッドのために静的メソッド置換を提供します。FacesBeanUtils クラスにはライフ・サイクルはありません。

FacesBeanUtils
+ getProperty ( [in] bean : Object , [in] property : String ) : Object
+ getPropertyType ( [in] bean : Object , [in] property : String ) : Class
+ getSimpleProperty ( [in] bean : Object , [in] property : String , [in] value : Object )
+ getProperty ( [in] bean : Object , [in] property : String , [in] value : Object )
+ convertFromString ( [in] value : String , [in] valueClass : Class ) : Object
+ convert ([in] targetType : Class , [in] bean : String ) : Object

Faces 構成パーサー

JavaServer Faces の Sun Reference Implementation は、 Jakarta Commons Digester API を使用して、Faces 構成ファイルを構文解析 します。 XML SAX ベースのパーサーは、Application Server に提供されます。Digester コードは、 リフレクション・コードを使用して、 その構文解析を実行します。これは、大容量の構成ファイルを構文解析すると、非常 に遅くなります。 下の図の FaceConfigParser クラスは、Faces 構成 DTD に書き込まれるカ スタムであるため、大容量の構成ファイルをより速く構文解析します。

図 3. Faces 構成パーサー



関連概念
Web アプリケーション
関連タスク
タスクの概説: Web アプリケーションの開発およびデプロイ
Web アプリケーションの開発
概念トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 10:13:28 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/cweb_javaserver_faces.html