パッケージ jakarta.faces.convert

クラス DateTimeConverter

  • 実装されたすべてのインターフェース:
    PartialStateHolderStateHolderConverter

    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 固有の値のいずれかでない限り、 typedateStyletimeStyle プロパティは無視されます。この場合、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 固有の値のいずれかでない限り、 typedateStyletimeStyle プロパティは無視されます。この場合、 DateTimeFormatter.ofPattern(String, Locale) を呼び出して、pattern の値を最初の引数として渡し、現在の Locale を 2 番目の引数として渡す必要がありますまた、このフォーマッターを使用して、発信値をフォーマットする必要があります
    • pattern が指定されていない場合、フォーマットは、type プロパティに基づいて行われます。これには、日付値、時間値、またはその両方、フォーマットされた文字列が含まれます。含まれる日付と時刻の値は、それぞれ dateStyle と timeStyle で指定されたスタイルに従ってフォーマットされます。
    • コンストラクターのサマリー

      コンストラクター  
      コンストラクター 説明
      DateTimeConverter()
    • メソッドのサマリー

      すべてのメソッド   インスタンスメソッド   具象メソッド  
      修飾子と型 メソッド 説明
      voidclearInitialState()
      PartialStateHolder を非デルタ追跡状態にリセットします。
      ObjectSEgetAsObject​(FacesContext context, UIComponent component, StringSE value)
      リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さ UIComponent に関連付けられている指定された文字列値を変換します
      StringSEgetAsString​(FacesContext context, UIComponent component, ObjectSE value)
      指定された UIComponent に関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。
      StringSEgetDateStyle()
      日付のフォーマットまたは解析に使用されるスタイルを返します。
      LocaleSEgetLocale()
      日付と時刻を解析またはフォーマットするときに使用する Locale を返します。
      StringSEgetPattern()
      日付と時刻のフォーマットおよび解析時に使用されるフォーマットパターンを返します。
      StringSEgetTimeStyle()
      時間のフォーマットまたは解析に使用されるスタイルを返します。
      TimeZoneSEgetTimeZone()
      時間値の解釈に使用される TimeZone を返します。
      StringSEgetType()
      フォーマットまたは解析する値の型を返します。
      booleaninitialStateMarked()
      デルタ状態の変更が追跡されている場合は true を返し、それ以外の場合は false を返します。
      booleanisTransient()
      true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。
      voidmarkInitialState()
      ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスで PartialStateHolder.markInitialState() メソッドが呼び出されることを確認する必要があります。
      voidrestoreState​(FacesContext context, ObjectSE state)
      state オブジェクトのエントリから状態を復元するために必要な処理を実行します。
      ObjectSEsaveState​(FacesContext context)
      インスタンスの状態を Serializable オブジェクトとして取得します。
      voidsetDateStyle​(StringSE dateStyle)
      日付のフォーマットまたは解析に使用するスタイルを設定します。
      voidsetLocale​(LocaleSE locale)
      日付と時刻を解析またはフォーマットするときに使用する Locale を設定します。
      voidsetPattern​(StringSE pattern)
      日付と時刻のフォーマットおよび解析時に使用するフォーマットパターンを設定します。
      voidsetTimeStyle​(StringSE timeStyle)
      時間のフォーマットまたは解析に使用するスタイルを設定します。
      voidsetTimeZone​(TimeZoneSE timeZone)
      時間値の解釈に使用される TimeZone を設定します。
      voidsetTransient​(boolean transientFlag)
      このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します
      voidsetType​(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 に置き換えられました。
        関連事項:
        定数フィールド値
    • コンストラクターの詳細

      • DateTimeConverter

        public DateTimeConverter()
    • メソッドの詳細

      • getDateStyle

        public StringSE getDateStyle()

        日付のフォーマットまたは解析に使用されるスタイルを返します。設定されていない場合、デフォルト値の default が返されます。

        戻り値:
        スタイル
      • setDateStyle

        public void setDateStyle​(StringSE dateStyle)

        日付のフォーマットまたは解析に使用するスタイルを設定します。有効な値は defaultshortmediumlongfull です。値が無効な場合、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)

        時間のフォーマットまたは解析に使用するスタイルを設定します。有効な値は defaultshortmediumlongfull です。値が無効な場合、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)

        フォーマットまたは解析する値の型を設定します。有効な値は、bothdatetime localDate localDateTimelocalTimeoffsetTime 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 に関連付けられている指定された文字列値を変換します

        次で指定:
        インターフェース ConvertergetAsObject 
        パラメーター:
        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 に関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。

        次で指定:
        インターフェース ConvertergetAsString 
        パラメーター:
        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 でなければなりません

        次で指定:
        インターフェース StateHoldersaveState 
        パラメーター:
        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 の場合、アクションを実行せずに戻ります。

        次で指定:
        インターフェース StateHolderrestoreState 
        パラメーター:
        context - Faces コンテキスト。
        state - 状態。
      • isTransient

        public boolean isTransient()
        インターフェースからコピーされた説明: StateHolder

        true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。

        次で指定:
        インターフェース StateHolderisTransient 
        戻り値:
        一時的な場合は true、それ以外の場合は false
      • setTransient

        public void setTransient​(boolean transientFlag)
        インターフェースからコピーされた説明: StateHolder

        このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します

        次で指定:
        インターフェース StateHoldersetTransient 
        パラメーター:
        transientFlag - このオブジェクトが 状態の保存または復元に参加しない場合はブール値 true を渡し、それ以外の場合は false を渡します。
      • initialStateMarked

        public boolean initialStateMarked()
        インターフェースからコピーされた説明: PartialStateHolder

        デルタ状態の変更が追跡されている場合は true を返し、それ以外の場合は false を返します。

        次で指定:
        インターフェース PartialStateHolderinitialStateMarked 
        戻り値:
        初期状態がマークされている場合は true、それ以外の場合は false
      • clearInitialState

        public void clearInitialState()
        インターフェースからコピーされた説明: PartialStateHolder

        PartialStateHolder を非デルタ追跡状態にリセットします。

        次で指定:
        インターフェース PartialStateHolderclearInitialState