クラス DateTimeConverter
- java.lang.ObjectSE
-
- jakarta.faces.convert.DateTimeConverter
- 実装されたすべてのインターフェース:
PartialStateHolder
、StateHolder
、Converter
public class DateTimeConverter extends ObjectSE implements Converter, PartialStateHolder
java.util.Date
値のConverter
実装。getAsObject()
メソッドは、次のアルゴリズムに従って、文字列をjava.util.Date
に解析します。- 指定された文字列が null の場合、
null
を返します。それ以外の場合は、続行する前に先頭と末尾の空白を削除します。 - 指定された文字列(トリミング後)の長さがゼロの場合、
null
を返します。 locale
プロパティが null でない場合は、そのLocale
を使用して解析を管理します。それ以外の場合は、UIViewRoot
からLocale
を使用します。pattern
が指定されている場合、その構文はjava.text.SimpleDateFormat
またはjava.time.format.DateTimeFormatter
で指定された規則に準拠している必要があります。これら 2 つのフォーマッタのどちらを使用するかは、type
の値によって異なります。このようなパターンは解析に使用され、type
の値がsetType(java.lang.String)
にリストされているjava.time
固有の値のいずれかでない限り、type
、dateStyle
、timeStyle
プロパティは無視されます。この場合、DateTimeFormatter.ofPattern(String, Locale)
を呼び出して、pattern
の値を最初の引数として渡し、現在のLocale
を 2 番目の引数として渡す必要があります。また、このフォーマッターを使用して、入力値を解析する必要があります。pattern
が指定されていない場合、解析はtype
プロパティに基づいて行われます。これは、日付値、時刻値、またはその両方、またはsetType(java.lang.String)
にリストされているjava.time
のクラスに固有のいくつかの値の 1 つを予期します。含まれる日付と時刻の値は、それぞれdateStyle
およびtimeStyle
で指定されたスタイルに従って解析されます。timezone
が指定されている場合、それを基礎となるDateFormat
インスタンスに渡す必要があります。それ以外の場合は、"GMT" タイムゾーンが使用されます。- すべての場合において、解析は寛大でなければなりません。指定された文字列は、解析形式に厳密に従う必要があります。
getAsString()
メソッドは型java.util.Date
(またはサブクラス)の値を予期し、次のアルゴリズムに従ってフォーマットされた文字列を作成します。- 指定された値が null の場合、長さがゼロの文字列を返します。
- 指定した値が文字列の場合、変更せずに返します。
locale
プロパティが null でない場合は、そのLocale
を使用してフォーマットを管理します。それ以外の場合は、UIViewRoot
からLocale
を使用します。timezone
が指定されている場合、それを基礎となるDateFormat
インスタンスに渡す必要があります。それ以外の場合は、"GMT" タイムゾーンが使用されます。pattern
が指定されている場合、その構文はjava.text.SimpleDateFormat
またはjava.time.format.DateTimeFormatter
で指定された規則に準拠している必要があります。これら 2 つのフォーマッタのどちらを使用するかは、type
の値によって異なります。このようなパターンはフォーマットに使用され、type
の値がsetType(java.lang.String)
にリストされているjava.time
固有の値のいずれかでない限り、type
、dateStyle
、timeStyle
プロパティは無視されます。この場合、DateTimeFormatter.ofPattern(String, Locale)
を呼び出して、pattern
の値を最初の引数として渡し、現在のLocale
を 2 番目の引数として渡す必要があります。また、このフォーマッターを使用して、発信値をフォーマットする必要があります。pattern
が指定されていない場合、フォーマットは、type
プロパティに基づいて行われます。これには、日付値、時間値、またはその両方、フォーマットされた文字列が含まれます。含まれる日付と時刻の値は、それぞれdateStyle
とtimeStyle
で指定されたスタイルに従ってフォーマットされます。
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 static StringSE
CONVERTER_ID
このコンバーターの標準コンバーター ID。static StringSE
DATE_ID
Date
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
DATETIME_ID
DateTime
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
STRING_ID
static StringSE
TIME_ID
Time
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。インターフェース jakarta.faces.convert.Converter から継承されたフィールド
DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME
コンストラクターのサマリー
コンストラクター コンストラクター 説明 DateTimeConverter()
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
clearInitialState()
PartialStateHolder を非デルタ追跡状態にリセットします。ObjectSE
getAsObject(FacesContext context, UIComponent component, StringSE value)
リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さUIComponent
に関連付けられている指定された文字列値を変換します。StringSE
getAsString(FacesContext context, UIComponent component, ObjectSE value)
指定されたUIComponent
に関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。StringSE
getDateStyle()
日付のフォーマットまたは解析に使用されるスタイルを返します。LocaleSE
getLocale()
日付と時刻を解析またはフォーマットするときに使用するLocale
を返します。StringSE
getPattern()
日付と時刻のフォーマットおよび解析時に使用されるフォーマットパターンを返します。StringSE
getTimeStyle()
時間のフォーマットまたは解析に使用されるスタイルを返します。TimeZoneSE
getTimeZone()
時間値の解釈に使用されるTimeZone
を返します。StringSE
getType()
フォーマットまたは解析する値の型を返します。boolean
initialStateMarked()
デルタ状態の変更が追跡されている場合はtrue
を返し、それ以外の場合はfalse
を返します。boolean
isTransient()
true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。void
markInitialState()
ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスでPartialStateHolder.markInitialState()
メソッドが呼び出されることを確認する必要があります。void
restoreState(FacesContext context, ObjectSE state)
state オブジェクトのエントリから状態を復元するために必要な処理を実行します。ObjectSE
saveState(FacesContext context)
インスタンスの状態をSerializable
オブジェクトとして取得します。void
setDateStyle(StringSE dateStyle)
日付のフォーマットまたは解析に使用するスタイルを設定します。void
setLocale(LocaleSE locale)
日付と時刻を解析またはフォーマットするときに使用するLocale
を設定します。void
setPattern(StringSE pattern)
日付と時刻のフォーマットおよび解析時に使用するフォーマットパターンを設定します。void
setTimeStyle(StringSE timeStyle)
時間のフォーマットまたは解析に使用するスタイルを設定します。void
setTimeZone(TimeZoneSE timeZone)
時間値の解釈に使用されるTimeZone
を設定します。void
setTransient(boolean transientFlag)
このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。void
setType(StringSE type)
フォーマットまたは解析する値の型を設定します。
フィールドの詳細
DATE_ID
public static final StringSE DATE_ID
Date
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}
は、変換されていない値に置き換えられます。{1}
はサンプル値に置き換えられました。{2}
は、値がこのメッセージを生成した入力コンポーネントのラベルであるString
に置き換えられました。
- 関連事項:
- 定数フィールド値
TIME_ID
public static final StringSE TIME_ID
Time
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}
は、変換されていない値に置き換えられます。{1}
はサンプル値に置き換えられました。{2}
は、値がこのメッセージを生成した入力コンポーネントのラベルであるString
に置き換えられました。
- 関連事項:
- 定数フィールド値
DATETIME_ID
public static final StringSE DATETIME_ID
DateTime
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}
は、変換されていない値に置き換えられます。{1}
はサンプル値に置き換えられました。{2}
は、値がこのメッセージを生成した入力コンポーネントのラベルであるString
に置き換えられました。
- 関連事項:
- 定数フィールド値
STRING_ID
public static final StringSE STRING_ID
DateTime
値のString
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}
は、変換されていない値に置き換えられます。{1}
は、値がこのメッセージを生成した入力コンポーネントのラベルであるString
に置き換えられました。
- 関連事項:
- 定数フィールド値
メソッドの詳細
getDateStyle
public StringSE getDateStyle()
日付のフォーマットまたは解析に使用されるスタイルを返します。設定されていない場合、デフォルト値の
default
が返されます。- 戻り値:
- スタイル
setDateStyle
public void setDateStyle(StringSE dateStyle)
日付のフォーマットまたは解析に使用するスタイルを設定します。有効な値は
default
、short
、medium
、long
、full
です。値が無効な場合、getAsObject()
またはgetAsString()
が呼び出されたときにConverterException
が発生します。- パラメーター:
dateStyle
- 新しいスタイルコード
getLocale
public LocaleSE getLocale()
日付と時刻を解析またはフォーマットするときに使用する
Locale
を返します。明示的に設定されていない場合は、現在のリクエストのUIViewRoot
に保存されているLocale
が返されます。- 戻り値:
Locale
setLocale
public void setLocale(LocaleSE locale)
日付と時刻を解析またはフォーマットするときに使用する
Locale
を設定します。null
に設定すると、現在のリクエストのUIViewRoot
に保存されているLocale
が使用されます。- パラメーター:
locale
- 新しいLocale
(またはnull
)
getPattern
public StringSE getPattern()
日付と時刻のフォーマットおよび解析時に使用されるフォーマットパターンを返します。
- 戻り値:
- パターン
setPattern
public void setPattern(StringSE pattern)
日付と時刻をフォーマットおよび解析するときに使用するフォーマットパターンを設定します。有効な値は、
java.text.SimpleDateFormat
でサポートされている値です。無効な値を指定すると、getAsObject()
またはgetAsString()
が呼び出されたときにConverterException
が発生します。- パラメーター:
pattern
- 新しいフォーマットパターン
getTimeStyle
public StringSE getTimeStyle()
時間のフォーマットまたは解析に使用するスタイルを返します。設定されていない場合、デフォルト値の
default
が返されます。- 戻り値:
- タイムスタイル
setTimeStyle
public void setTimeStyle(StringSE timeStyle)
時間のフォーマットまたは解析に使用するスタイルを設定します。有効な値は
default
、short
、medium
、long
、full
です。値が無効な場合、getAsObject()
またはgetAsString()
が呼び出されたときにConverterException
が発生します。- パラメーター:
timeStyle
- 新しいスタイルコード
getTimeZone
public TimeZoneSE getTimeZone()
時間値の解釈に使用される
TimeZone
を返します。明示的に設定されていない場合、GMT
のデフォルトのタイムゾーンが返されます。- 戻り値:
TimeZone
setTimeZone
public void setTimeZone(TimeZoneSE timeZone)
時間値の解釈に使用される
TimeZone
を設定します。- パラメーター:
timeZone
- 新しいタイムゾーン
getType
public StringSE getType()
フォーマットまたは解析する値の型を返します。明示的に設定されていない場合、デフォルトの型である
date
が返されます。- 戻り値:
- 型
setType
public void setType(StringSE type)
フォーマットまたは解析する値の型を設定します。有効な値は、
both
、date
、time
localDate
、localDateTime
、localTime
、offsetTime
、offsetDateTime
、またはzonedDateTime
です。"local"、"offset"、"zoned" で始まる値は、パッケージjava.time
の Java SE 8 Date Time API クラスに対応し、名前は大文字の最初の文字から派生します。例: 値"localDate"
の場合はjava.time.LocalDate
。無効な値を指定すると、getAsObject()
またはgetAsString()
が呼び出されたときにConverterException
が発生します。- パラメーター:
type
- 新しい日付スタイル
getAsObject
public ObjectSE getAsObject(FacesContext context, UIComponent component, StringSE value)
インターフェースからコピーされた説明:Converter
リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さ
UIComponent
に関連付けられている指定された文字列値を変換します。- 次で指定:
- インターフェース
Converter
のgetAsObject
- パラメーター:
context
- 処理中のリクエストのFacesContext
component
- このモデルオブジェクト値が関連付けられているUIComponent
value
- 変換する文字列値 (null
の場合があります)- 戻り値:
- 変換する値が
null
の場合はnull
、それ以外の場合は変換の結果 - 例外:
ConverterException
- 変換が正常に実行できない場合NullPointerExceptionSE
-context
またはcomponent
がnull
の場合
getAsString
public StringSE getAsString(FacesContext context, UIComponent component, ObjectSE value)
インターフェースからコピーされた説明:Converter
指定された
UIComponent
に関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。- 次で指定:
- インターフェース
Converter
のgetAsString
- パラメーター:
context
- 処理中のリクエストのFacesContext
component
- このモデルオブジェクト値が関連付けられているUIComponent
value
- 変換するモデルオブジェクトの値 (null
の場合があります)- 戻り値:
- 値が
null
の場合は長さ 0 の文字列、それ以外の場合は変換の結果 - 例外:
ConverterException
- 変換が正常に実行できない場合NullPointerExceptionSE
-context
またはcomponent
がnull
の場合
saveState
public ObjectSE saveState(FacesContext context)
インターフェースからコピーされた説明:StateHolder
インスタンスの状態を
Serializable
オブジェクトとして取得します。このインターフェースを実装するクラスが、StateHolder を実装するインスタンス(イベントハンドラー、バリデーターなどを含む
UIComponent
など)への参照を持っている場合、このメソッドはそれらすべてのインスタンスでStateHolder.saveState(jakarta.faces.context.FacesContext)
メソッドも呼び出す必要があります。このメソッドは、子とファセットの状態を保存してはなりませんそれはStateManager
を介して行われますこのメソッドは、実装オブジェクトの状態を変更してはなりません。つまり、このコードを実行した後:
Object state = component.saveState(facesContext);
component
は、実行前と同じでなければなりません。このメソッドからの戻り値は
Serializable
でなければなりません- 次で指定:
- インターフェース
StateHolder
のsaveState
- パラメーター:
context
- Faces コンテキスト。- 戻り値:
- 保存された状態。
restoreState
public void restoreState(FacesContext context, ObjectSE state)
インターフェースからコピーされた説明:StateHolder
state オブジェクトのエントリから状態を復元するために必要な処理を実行します。
このインターフェースを実装するクラスが、StateHolder も実装するインスタンスへの参照を持っている場合(イベントハンドラー、バリデーターなどを備えた
UIComponent
など)、このメソッドはそれらすべてのインスタンスでStateHolder.restoreState(jakarta.faces.context.FacesContext, java.lang.Object)
メソッドも呼び出す必要があります。state
引数がnull
の場合、アクションを実行せずに戻ります。- 次で指定:
- インターフェース
StateHolder
のrestoreState
- パラメーター:
context
- Faces コンテキスト。state
- 状態。
isTransient
public boolean isTransient()
インターフェースからコピーされた説明:StateHolder
true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。
- 次で指定:
- インターフェース
StateHolder
のisTransient
- 戻り値:
- 一時的な場合は
true
、それ以外の場合はfalse
。
setTransient
public void setTransient(boolean transientFlag)
インターフェースからコピーされた説明:StateHolder
このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。
- 次で指定:
- インターフェース
StateHolder
のsetTransient
- パラメーター:
transientFlag
- このオブジェクトが 状態の保存または復元に参加しない場合はブール値true
を渡し、それ以外の場合はfalse
を渡します。
markInitialState
public void markInitialState()
インターフェースからコピーされた説明:PartialStateHolder
ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスで
PartialStateHolder.markInitialState()
メソッドが呼び出されることを確認する必要があります。インターフェースの実装者は、markInitialState()
が呼び出されてからPartialStateHolder.clearInitialState()
が呼び出されるまでPartialStateHolder.initialStateMarked()
がtrue
を返すことを確認する必要があります。その後、initialStateMarked()
はfalse
を返す必要があります。また、インスタンスがinitialStateMarked()
からtrue
を返す間、実装はStateHolder.saveState(jakarta.faces.context.FacesContext)
の実装で変更された状態のみを返す必要があります。- 次で指定:
- インターフェース
PartialStateHolder
のmarkInitialState
initialStateMarked
public boolean initialStateMarked()
インターフェースからコピーされた説明:PartialStateHolder
デルタ状態の変更が追跡されている場合は
true
を返し、それ以外の場合はfalse
を返します。- 次で指定:
- インターフェース
PartialStateHolder
のinitialStateMarked
- 戻り値:
- 初期状態がマークされている場合は
true
、それ以外の場合はfalse
。
clearInitialState
public void clearInitialState()
インターフェースからコピーされた説明:PartialStateHolder
PartialStateHolder を非デルタ追跡状態にリセットします。
- 次で指定:
- インターフェース
PartialStateHolder
のclearInitialState