web-dev-qa-db-ja.com

すべてのJSF関連のweb.xmlコンテキストパラメータの名前と値の概要

いくつかのJavaServer Facesがあります<context-param> in web.xmlfacelets.REFRESH_PERIODfacelets.DEVELOPMENTfacelets.SKIP_COMMENTSなど。これらのすべてのパラメーターの完全なリストはどこにありますか?

29
Cherry

まず、facelets.で始まるものはJSFコンテキストパラメーターではなく、 Facelets 1.x コンテキストパラメーターです。以前は、JSF 1.x時代にFaceletsはJSFの一部として統合されていませんでした。ただし、JSF 2.0以降、FaceletsはJSFの一部として統合され、レガシーJSPをデフォルトのビューテクノロジーとして置き換え、ほとんどのFacelets 1.xコンテキストパラメーターはJSF 2.xコンテキストパラメーターに再マップされました。

実際のJSFコンテキストパラメータ名は、javax.faces.で始まります。それらは JSF仕様 の11.1.3章にリストされています。 JSF 2.0仕様からの関連性の抜粋を次に示します。

11.1.3アプリケーション構成パラメータ

サーブレットコンテナは、Webアプリケーションデプロイメント記述子に<context-param>要素を含めることでカスタマイズできるアプリケーション構成パラメーターをサポートします。すべてのJSF実装は、次のアプリケーション構成パラメーター名をサポートする必要があります。

  • javax.faces.CONFIG_FILES-「/WEB-INF/faces-config.xml」という名前の構成リソースをロードする前に、JSF実装がアプリケーション構成リソースを検索するコンテキスト相対リソースパスのコンマ区切りリスト(セクション11.4.4「アプリケーション構成リソースの形式」を参照)リソースが存在します)。 「/WEB-INF/faces-config.xml」がリストに存在する場合、無視する必要があります。

  • javax.faces.DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE-このパラメーターが設定され、その値のString表現でtoLowerCase().equals("true")を呼び出すと、trueが返されます。Application.createConverter()は、タイムゾーンのデフォルトがすべてのjavax.faces.convert.DateTimeConverterインスタンスは、「GMT」ではなくTimeZone.getDefault()と等しくなければなりません。

  • javax.faces.DEFAULT_SUFFIX-JSFコンテンツを含むJSPページの代替サフィックスをWebアプリケーションが定義できるようにします。完全な仕様については、記号定数ViewHandler.DEFAULT_SUFFIX_PARAM_NAMEのjavadocsを参照してください。

  • javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER-このパラメーターが設定され、その値のString表現でtoLowerCase().equals("true")を呼び出すと、trueが返されます。デフォルトのViewHandlerは、最新の1.2で指定されたとおりに動作する必要がありますこの仕様のバージョン。セクション7.5「ViewHandler」で指定され、JavaServer Facesビュー宣言言語で作成されたページのリクエストの処理に関係するデフォルトのViewHandlerで実装される動作は、ランタイムによって実行されてはなりません。

  • javax.faces.FACELETS_LIBRARIES-このパラメーターが設定されている場合、ランタイムは、セミコロン(;)で区切られたパスのリストとして解釈する必要があり、「/」で始まります(引用符なし)。ランタイムは、リスト内の各エントリをWebアプリケーションルートからの相対パスとして解釈し、そのパスで見つかったファイルをFaceletタグライブラリとして解釈し、セクション1.1「アプリケーション構成リソースファイルのXMLスキーマ定義」に準拠する必要がありますセクション10.3.2「フェイスレットタグライブラリメカニズム」に従ってタグを公開します。ランタイムは、既存のfaceletsタグライブラリとの後方互換性のために、facelets.LIBRARIES param名をこのparam名のエイリアスとしても考慮する必要があります。

  • javax.faces.FACELETS_BUFFER_SIZE-ResponseWriterが生成されたときに応答に設定するバッファーサイズ。デフォルトでは、値は-1であり、応答にバッファーサイズを割り当てません。開発モードを使用している場合は、エラーが生成されたときに応答が部分的にレンダリングされないようにするために、これを増やす必要があります。ランタイムは、既存のfaceletsタグライブラリとの後方互換性のために、facelets.BUFFER_SIZE param名をこのparam名のエイリアスとしても考慮する必要があります。

  • javax.faces.DECORATORS-javax.faces.view.facelets.TagDecorator型のクラス名のセミコロン(;)デリミテッドリスト、引数なしのコンストラクター。これらのデコレータは、Facelets VDLビューの最初のリクエストがページコンパイルのためにViewHandlerにヒットしたときにロードされます。ランタイムは、既存のfaceletsタグライブラリとの後方互換性のために、facelets.DECORATORSパラメータ名をこのパラメータ名のエイリアスとして考慮する必要もあります。

  • javax.faces.FACELETS_REFRESH_PERIOD-ページが要求されたときに、コンパイラが変更をチェックする間隔を秒単位で指定します。ページのコンパイル後にコンパイラが変更をチェックしないようにするには、-1の値を使用します。更新間隔を低く設定すると、開発中に実行中のアプリケーションでページを編集できるようになります。また、ランタイムは、既存のfaceletsタグライブラリとの後方互換性のために、facelets.REFRESH_PERIOD param名をこのparam名のエイリアスとして考慮する必要があります。

  • javax.faces.FACELETS_RESOURCE_RESOLVER-このパラメーターが設定されている場合、ランタイムは、その値をjavax.faces.view.facelets.ResourceResolverを拡張し、引数ゼロのパブリックコンストラクターまたは引数の型が1つの引数パブリックコンストラクターを持つJavaクラスの完全修飾クラス名として解釈する必要がありますはResourceResolverです。このパラメーターが設定されていて、その値がこれらの要件に適合していない場合、ランタイムはメッセージを記録して続行する必要があります。これらの要件に準拠し、引数が1つのコンストラクターがある場合、デフォルトのResourceResolverをコンストラクターに渡す必要があります。引数なしのコンストラクタがある場合、直接呼び出されます。いずれの場合でも、新しいResourceResolverが古いものを置き換えます。ランタイムは、既存のfaceletsタグライブラリとの後方互換性のために、facelets.RESOURCE_RESOLVER param名をこのparam名のエイリアスとしても考慮する必要があります。

  • javax.faces.FACELETS_SKIP_COMMENTS-このパラメーターが設定され、その値のString表現でtoLowerCase().equals("true")を呼び出すと、trueが返されるため、ランタイムはFaceletsソースページのXMLコメントがクライアントに配信されます。ランタイムは、既存のfaceletsタグライブラリとの後方互換性のために、facelets.SKIP_COMMENTS param名をこのparam名のエイリアスとしても考慮する必要があります。

  • javax.faces.FACELETS_SUFFIX-JSFコンテンツを含むFaceletベースのXHTMLページの代替サフィックスをWebアプリケーションが定義できるようにします。完全な仕様については、記号定数ViewHandler.FACELETS_SUFFIX_PARAM_NAMEのjavadocsを参照してください。

  • javax.faces.FACELETS_VIEW_MAPPINGS-このパラメーターが設定されている場合、ランタイムは、アプリケーションの特定のページが拡張子に関係なくFaceletsを使用するものとして解釈される必要があることを強制的に宣言するために使用される文字列のセミコロン(;)区切りリストとして解釈する必要がありますまた、ランタイムは、既存のfaceletsアプリケーションとの後方互換性のために、facelets.VIEW_MAPPINGS param名をこのparam名のエイリアスと見なす必要があります。完全な仕様については、記号定数ViewHandler.FACELETS_VIEW_MAPPINGS_PARAM_NAMEのjavadocsを参照してください。

  • javax.faces.FULL_STATE_SAVING_VIEW_IDS-ランタイムは、このパラメーターの値をビューIDのコンマ区切りリストとして解釈する必要があります。各ビューIDは、JSF 1.2で指定された状態保存メカニズムを使用して状態を保存する必要があります。

  • javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL-このパラメーターが設定され、その値のString表現でtoLowerCase().equals("true")を呼び出すとtrueが返される場合、UIInput.validate()の実装は次の追加アクションを実行する必要があります。 javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULLコンテキストパラメータ値がtrue(大文字と小文字を無視)で、UIInput.getSubmittedValue()が長さゼロのStringを返し、UIInput.setSubmittedValue(null)を呼び出し、現在の送信としてnullを使用して処理を続行する場合値

  • javax.faces.LIFECYCLE_ID-このWebアプリケーションのJSF要求を処理するときに使用されるLifecycleインスタンスのライフサイクル識別子。指定しない場合は、LifecycleFactory.DEFAULT_LIFECYCLEで識別されるJSFデフォルトインスタンスを使用する必要があります。

  • javax.faces.PARTIAL_STATE_SAVING-ランタイムが参照するServletContext initパラメーターは、部分的な状態保存メカニズムを使用する必要があるかどうかを判断します。未定義の場合、ランタイムはアプリケーションのバージョンレベルを決定する必要があります。

    • バージョン1.2以前のアプリケーションの場合、ランタイムは部分的な状態保存メカニズムを使用しないでください。
    • 2.0以降のバージョンのアプリケーションの場合、ランタイムは部分的な状態保存メカニズムを使用する必要があります。

    このパラメーターが定義されていて、アプリケーションのバージョンが1.2以下である場合、ランタイムは部分的な状態保存メカニズムを使用してはなりません。それ以外の場合、このパラメータが定義され、その値のString表現でtoLowerCase().equals("true")を呼び出すと、trueが返され、ランタイムは部分状態メカニズムを使用する必要があります。それ以外の場合は、部分的な状態保存メカニズムを使用しないでください。

  • javax.faces.PROJECT_STAGE-この特定のJSFアプリケーションがソフトウェア開発ライフサイクルのどこにあるかを説明する人間が読み取れる文字列。有効な値は、クラスjavax.faces.application.ProjectStageの列挙型定数に対応する「Development」、「UnitTest」、「SystemTest」、または「Production」です。 JNDIを介してこの値を設定することもできます。 Application.getProjectStage()のjavadocsを参照してください。

  • javax.faces.STATE_SAVING_METHOD-状態情報が保存される場所。有効な値は「server」(通常はHttpSessionに保存)および「client」(通常は後続のフォーム送信で非表示フィールドとして保存)です。指定しない場合、デフォルト値「server」を使用する必要があります。

  • javax.faces.VALIDATE_EMPTY_FIELDS-このパラメーターが設定され、その値のString表現でtoLowerCase().equals("true")を呼び出すと、trueが返され、送信されたすべてのフィールドが検証されます。これは、モデル検証ツールが現在のアプリケーションでnull値または空の値を許可するかどうかを決定できるようにするために必要です。値がfalseの場合、nullまたは空の値はバリデーターに渡されません。値が文字列「auto」の場合、ランタイムはJSR-303 Beans Validationが現在の環境に存在するかどうかを確認する必要があります。その場合、ランタイムは値「true」が指定されているかのように処理する必要があります。 JSR-303 Beans Validationが現在の環境に存在しない場合、ランタイムはほとんどの場合、値「false」が指定されているかのように進みます。 paramが設定されていない場合、システムはparamに値「auto」が設定されているかのように動作する必要があります。

  • javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR-このパラメーターが設定され、その値のString表現でtoLowerCase().equals("true")を呼び出すと、trueが返されます。シンボリック定数javax.faces.validator.VALIDATOR_IDの値をデフォルトのバリデーターのリストに追加します。このパラメーターをtrueに設定すると、アプリケーションのすべてのビューのすべての入力コンポーネントへのBean Validationの自動インストールが無効になりますが、手動インストールは可能です。

JSF実装は、追加の構成パラメーター、およびJSF実装をカスタマイズする追加のメカニズムをサポートすることを選択できます。ただし、これらの機能に依存するアプリケーションは、他のJSF実装に移植できません。

最後の段落で読むことができるように、JSF実装には独自のコンテキストパラメータのセットもあります。このブログにリストされているcom.Sun.faces.で始まるMojarraの場合: 利用可能なMojarraコンテキストパラメータは何ですか? MyFacesの場合、org.Apache.myfaces.で始まるもので、独自のサイトにもリストされています:- MyFacesドキュメント-Webコンテキストパラメーター

74
BalusC