3.5.2 アプリケーションサーバ独自のコンテキストパラメタ

アプリケーションサーバ独自のコンテキストパラメタを次の表に示します。

表3-9 アプリケーションサーバ独自のコンテキストパラメタ

パラメタ名データ型指定可能値不正な値の対処省略値説明
com.sun.faces.clientStateTimeoutLong-9223372036854775808​
~9223372036854775807​
タイムアウトは動作しないタイムアウトは動作しないビューの状態に対するタイムアウト値を指定します。
ビューを表示してから次のビューを表示するまでの時間がタイムアウト値を超えるとビューは表示されません。
タイムアウト値を超えると,javax.faces.application.ViewExpiredExceptionがスローされます。
このパラメタはjavax.faces.STATE_SAVING_METHODの値が"client"の場合に有効になります。
このパラメタを設定しない場合,タイムアウトは発生しません。
このパラメタの値に1を加えた値がタイムアウト値として有効になります。
例えば,0が設定された場合は,1分でタイムアウトが発生します。
負の値を設定すると,サブミット後のビューは必ず表示されなくなります。
com.sun.faces.disableUnicodeEscaping※1Stringauto,trueまたはfalsefalseautoクライアントへ返すレスポンスページの非ASCII文字の出力方法を決定します。
JSFの非ASCII文字の出力方法には,そのまま文字で出力するか,または文字参照で出力するかの2とおりがあります。
この機能はレスポンスページのエンコーディングの設定に影響を受けます。
また,この機能の影響する範囲はJSPとFaceletsで異なります。
JSPではJSFタグ(HTMLタグまたはコアタグ)に指定した文字が対象となります。
Faceletsではページに記載したすべての文字が対象となります。
com.sun.faces.numberOfLogicalViewsint0~
2147483647​
1515論理ビュー※2の数を指定します。
このパラメタはjavax.faces.STATE_SAVING_METHODの値が"server"の場合に有効になります。
このパラメタに設定した値を超えるビューにアクセスすると,参照されていない時間が最も長い論理ビューが,現在アクセスした論理ビューに置換されます。
置換されたビューをサブミットしても結果のページは表示されません。
このパラメタに0を指定すると,サブミット後のビューは必ず表示されなくなります。
負の値を指定した場合は,JSPとFaceletsで挙動が異なります。
JSPの場合は,例外が発生しますが,ビューは表示され,サブミットもできます。ただし,ビューの状態は保存されません。
Faceletsの場合は,例外が発生します。ビューは表示されません。
com.sun.faces.numberOfViewsInSessionint0~2147483647​1515論理ビュー※2に登録できるビューの状態の数を指定します。
このパラメタはjavax.faces.STATE_SAVING_METHODの値が"server"の場合に有効になります。
同じビューをサブミットした回数がこのパラメタに設定した値を超えると,参照されていない時間が最も長いビューの状態が,現在アクセスしたビューの状態に置換されます。
置換された状態を持っていたビューをサブミットしても結果のページは表示されません。
このパラメタに0を指定すると,サブミット後のビューは必ず表示されなくなります。
負の値を指定した場合は,JSPとFaceletsで挙動が異なります。
JSPの場合は,例外が発生しますが,ビューは表示され,サブミットもできます。ただし,ビューの状態は保存されません。
Faceletsの場合は,例外が発生します。ビューは表示されません。
注※1
com.sum.faces.disableUnicode.Escapingの設定値およびレスポンスページの出力との対応を次の表に示します。

表3-10 com.sum.faces.disableUnicode.Escapingの設定値とレスポンスページの出力との対応

com.sun.faces.disableUnicodeEscapingの設定値レスポンスページのエンコーディングがUTF型,ISO-8859-1の場合レスポンスページのエンコーディングがUTF型,ISO-8859-1以外の場合
true文字文字
false文字参照文字参照
auto文字文字参照
注※2
論理ビューとは,JSFが保存しているレスポンスページのことです。クライアントが今までにアクセスしたビューを識別するために使用します。クライアントがビューにアクセスした際に論理ビューは作成されます。また,論理ビューはビューの状態を保持します。ビューの状態は,同じビューをサブミットするごとに一つずつ増加していきます。
numberOfLogicalViewsおよびnumberOfViewsInSessionの指定値とビューの関係を次の図に示します。

図3-2 numberOfLogicalViewsおよびnumberOfViewsInSessionの指定値とビューの関係

[図データ]
numberOfLogicalViewsに指定した数の論理ビューごとに,numberOfViewsInSessionに指定した数の状態が保持されます。
クライアントからサーバに値をサブミットすると,新しい状態のビューがサーバに保存されます。なお,状態とは,論理ビューで記述したUIコンポーネントの情報のことです。
JSFでは,ユーザが作成したFaceletsファイルやJSPファイルを基にして生成したHTMLページの画面の情報(ビューの状態)とSessionScopeを定義したManagedBeanクラスのオブジェクトをHTTPセッションに登録します。