インターフェース Converter<T>
- 型パラメーター:
T- 変換するオブジェクト値のジェネリクス型。
- すべての既知の実装クラス:
BigDecimalConverter、BigIntegerConverter、BooleanConverter、ByteConverter、CharacterConverter、DateTimeConverter、DoubleConverter、EnumConverter、FloatConverter、IntegerConverter、LongConverter、NumberConverter、ShortConverter、UUIDConverter
Converter は、モデルデータオブジェクトと、レンダリングに適したこれらのオブジェクトの文字列表現との間で、オブジェクトから文字列および文字列からオブジェクトへの変換を実行できる Java クラスを記述するインターフェースです。
Converter 実装には、引数なしの public コンストラクターが必要です。さらに、Converter クラスが構成ツリーの値をコンポーネントツリーとともに保存および復元したい場合、実装は StateHolder も実装する必要があります。
仕様のバージョン 1.2 以降、上記のゼロ引数コンストラクター要件の例外が導入されました。コンバーターに Class インスタンスをとる単一引数コンストラクターがあり、変換されるデータの Class がコンバーターのインスタンス化時にわかっている場合、このコンストラクターを使用して、引数なしのバージョンではなくコンバーターをインスタンス化する必要があります。これにより、Java 列挙型のクラスごとの変換が可能になります。
Converter がその状態の一部として独自の Locale を維持していない限り、Converter 実装がそのジョブを実行するために java.util.Locale を必要とする場合、Locale を現在の FacesContext の UIViewRoot から取得する必要があります。
Converter を実装するクラスに ResourceDependency アノテーションがある場合、ValueHolder.setConverter(jakarta.faces.convert.Converter) が呼び出されたときに、ResourceDependency で説明されているアクションを実行する必要があります。Converter を実装するクラスに ResourceDependencies アノテーションがある場合、ValueHolder.setConverter(jakarta.faces.convert.Converter) が呼び出されたときに、ResourceDependencies で説明されているアクションを実行する必要があります。
フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSEこのパラメーターが設定されており、その値の String 表現に対して toLowerCase().equals("true" ) を呼び出すと true が返される場合、Application.createConverter() は、すべての jakarta.faces.convert.DateTimeConverter インスタンスのタイムゾーンのデフォルトが TimeZone.getDefault に等しいことを保証する必要があります。"GMT" の代わりに () を使用します。方法の概要
修飾子と型メソッド説明getAsObject(FacesContext context, UIComponent component, StringSE value) リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さUIComponentに関連付けられている指定された文字列値を変換します。getAsString(FacesContext context, UIComponent component, T value) 指定されたUIComponentに関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。
フィールドの詳細
DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME
このパラメーターが設定されており、その値の String 表現に対して toLowerCase().equals("true" ) を呼び出すと true が返される場合、Application.createConverter() は、すべての jakarta.faces.convert.DateTimeConverter インスタンスのタイムゾーンのデフォルトが TimeZone.getDefault に等しいことを保証する必要があります。"GMT" の代わりに () を使用します。
- 導入:
- 2.0
- 関連事項:
メソッドの詳細
getAsObject
リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さ
UIComponentに関連付けられている指定された文字列値を変換します。- パラメーター:
context- 処理中のリクエストのFacesContextcomponent- このモデルオブジェクト値が関連付けられているUIComponentvalue- 変換する文字列値 (nullの場合があります)- 戻り値:
- 変換する値が
nullの場合はnull、それ以外の場合は変換の結果 - 例外:
ConverterException- 変換が正常に実行できない場合NullPointerExceptionSE-contextまたはcomponentがnullの場合
getAsString
指定された
UIComponentに関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。- パラメーター:
context- 処理中のリクエストのFacesContextcomponent- このモデルオブジェクト値が関連付けられているUIComponentvalue- 変換するモデルオブジェクトの値 (nullの場合があります)- 戻り値:
- 値が
nullの場合は長さ 0 の文字列、それ以外の場合は変換の結果 - 例外:
ConverterException- 変換が正常に実行できない場合NullPointerExceptionSE-contextまたはcomponentがnullの場合