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