パッケージ jakarta.faces.convert

クラス NumberConverter

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

    public class NumberConverter
    extends ObjectSE
    implements Converter, PartialStateHolder

    java.lang.Number  値の Converter 実装。

    getAsObject() メソッドは、次のアルゴリズムに従って、文字列を java.lang.Double または java.lang.Long に解析します。

    • 指定された文字列が null の場合、null を返します。それ以外の場合は、続行する前に先頭と末尾の空白を削除します。
    • 指定された文字列(トリミング後)の長さがゼロの場合、null を返します。
    • locale プロパティが null でない場合は、その Locale を使用して解析を管理します。それ以外の場合は、UIViewRoot から Locale を使用します。
    • pattern が指定されている場合、その構文は java.text.DecimalFormat で指定された規則に準拠している必要があります。このようなパターンは解析に使用され、type プロパティは無視されます。
    • pattern が指定されていない場合、解析は type プロパティに基づいて行われます。このプロパティは、通貨、数値、パーセントを想定しています。通貨、数値、パーセンテージの解析パターンは、java.text.NumberFormat クラスの getCurrencyInstance()getNumberInstance()getPercentInstance() メソッドを呼び出し、選択した Locale を渡すことによって決定されます。
    • integerOnly プロパティが true に設定されている場合、文字列の整数部分のみが解析されます。詳細については、java.text.NumberFormat クラスの setParseIntegerOnly() メソッドの JavaDocs を参照してください。

    getAsString() メソッドは型 java.lang.Number (またはサブクラス)の値を予期し、次のアルゴリズムに従ってフォーマットされた文字列を作成します。

    • 指定された値が null の場合、長さがゼロの文字列を返します。
    • 指定した値が文字列の場合、変更せずに返します。
    • locale プロパティが null でない場合は、その Locale を使用してフォーマットを管理します。それ以外の場合は、FacesContext から Locale を使用します。
    • pattern が指定されている場合、その構文は java.text.DecimalFormat で指定された規則に準拠している必要があります。このようなパターンはフォーマットに使用され、type プロパティは(次の段落で説明する関連するフォーマットオプションとともに)無視されます。
    • pattern が指定されていない場合、フォーマットは type プロパティに基づいて行われます。このプロパティは、値を通貨、数値、パーセントとしてフォーマットします。通貨、数値、パーセンテージのフォーマットパターンは、パーセンテージを呼び出すことによって決定されます。パーセンテージを呼び出すことによって、java.text.NumberFormat クラスの getCurrencyInstance()getNumberInstance()getPercentInstance() メソッドを呼び出し、選択した Locale を渡します。さらに、指定されている場合、次のプロパティがフォーマットパターンに適用されます。
      • groupingUsed プロパティが true の場合、対応する NumberFormat インスタンスの setGroupingUsed(true) メソッドが呼び出されます。
      • 結果の整数部分と小数部分の最小桁数と最大桁数は、maxFractionDigitsmaxIntegerDigitsminFractionDigitsminIntegerDigits プロパティに設定された値に基づいて構成されます。
      • 型が currency に設定されている場合、currencyCode または currencySymbol プロパティのいずれかを使用して、使用する通貨記号を構成することもできます。両方が設定されている場合、currencyCode の値が JDK 1.4(またはそれ以降)JVM で優先されます。それ以外の場合は、currencySymbol の値が優先されます。
    • コンストラクターのサマリー

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

      すべてのメソッド   インスタンスメソッド   具象メソッド  
      修飾子と型 メソッド 説明
      voidclearInitialState()
      PartialStateHolder を非デルタ追跡状態にリセットします。
      ObjectSEgetAsObject​(FacesContext context, UIComponent component, StringSE value)
      リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さ UIComponent に関連付けられている指定された文字列値を変換します
      StringSEgetAsString​(FacesContext context, UIComponent component, ObjectSE value)
      指定された UIComponent に関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。
      StringSEgetCurrencyCode()
      type が currency である getAsString() によって使用される ISO 4217 通貨コードを返します。
      StringSEgetCurrencySymbol()
      type が currency の getAsString() で使用される通貨記号を返します。
      LocaleSEgetLocale()
      数値を解析するときに使用する Locale を返します。
      intgetMaxFractionDigits()
      getAsString() が結果の小数部分でレンダリングする必要がある最大桁数を返します。
      intgetMaxIntegerDigits()
      getAsString() が結果の整数部分にレンダリングする必要がある最大桁数を返します。
      intgetMinFractionDigits()
      getAsString() が結果の小数部分でレンダリングする必要がある最小桁数を返します。
      intgetMinIntegerDigits()
      getAsString() が結果の整数部分にレンダリングする必要がある最小桁数を返します。
      StringSEgetPattern()
      数値のフォーマットおよび解析時に使用されるフォーマットパターンを返します。
      StringSEgetType()
      数値のフォーマットおよび解析時に使用される数値型を返します。
      booleaninitialStateMarked()
      デルタ状態の変更が追跡されている場合は true を返し、それ以外の場合は false を返します。
      booleanisGroupingUsed()
      getAsString に必要に応じてグループ化区切り文字を含める必要がある場合は、true を返します。
      booleanisIntegerOnly()
      getAsObject() から指定された値の整数部分のみを返す必要がある場合は、true を返します。
      booleanisTransient()
      true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。
      voidmarkInitialState()
      ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスで PartialStateHolder.markInitialState() メソッドが呼び出されることを確認する必要があります。
      voidrestoreState​(FacesContext context, ObjectSE state)
      state オブジェクトのエントリから状態を復元するために必要な処理を実行します。
      ObjectSEsaveState​(FacesContext context)
      インスタンスの状態を Serializable オブジェクトとして取得します。
      voidsetCurrencyCode​(StringSE currencyCode)
      type が currency の getAsString() で使用される ISO 4217 通貨コードを設定します。
      voidsetCurrencySymbol​(StringSE currencySymbol)
      getAsString() で使用される通貨記号を currency の type で設定します。
      voidsetGroupingUsed​(boolean groupingUsed)
      必要に応じて、getAsString() にグループ化区切り文字を含める必要があるかどうかを示すフラグを設定します。
      voidsetIntegerOnly​(boolean integerOnly)
      指定された値の整数部分のみを getAsObject() から返す必要がある場合は、true に設定します。
      voidsetLocale​(LocaleSE locale)
      数値を解析するときに使用する Locale を設定します。
      voidsetMaxFractionDigits​(int maxFractionDigits)
      getAsString() が結果の小数部にレンダリングする最大桁数を設定します。
      voidsetMaxIntegerDigits​(int maxIntegerDigits)
      getAsString() が結果の整数部分にレンダリングする最大桁数を設定します。
      voidsetMinFractionDigits​(int minFractionDigits)
      結果の小数部に getAsString() がレンダリングする最小桁数を設定します。
      voidsetMinIntegerDigits​(int minIntegerDigits)
      getAsString() が結果の整数部分にレンダリングする最小桁数を設定します。
      voidsetPattern​(StringSE pattern)
      数値の書式設定および解析時に使用する書式パターンを設定します。
      voidsetTransient​(boolean transientFlag)
      このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します
      voidsetType​(StringSE type)
      数値の書式設定および解析時に使用する数値型を設定します。
    • フィールドの詳細

      • CURRENCY_ID

        public static final StringSE CURRENCY_ID

        Number への変換が失敗した場合に作成される FacesMessage のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。

        • {0} は、変換されていない値に置き換えられます。
        • {1} はサンプル値に置き換えられました。
        • {2} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。
        関連事項:
        定数フィールド値
      • NUMBER_ID

        public static final StringSE NUMBER_ID

        Number への変換が失敗した場合に作成される FacesMessage のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。

        • {0} は、変換されていない値に置き換えられます。
        • {1} はサンプル値に置き換えられました。
        • {2} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。
        関連事項:
        定数フィールド値
      • PATTERN_ID

        public static final StringSE PATTERN_ID

        Number への変換が失敗した場合に作成される FacesMessage のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。

        • {0} は、変換されていない値に置き換えられます。
        • {1} はサンプル値に置き換えられました。
        • {2} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。
        関連事項:
        定数フィールド値
      • PERCENT_ID

        public static final StringSE PERCENT_ID

        Number への変換が失敗した場合に作成される FacesMessage のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。

        • {0} は、変換されていない値に置き換えられます。
        • {1} はサンプル値に置き換えられました。
        • {2} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。
        関連事項:
        定数フィールド値
      • STRING_ID

        public static final StringSE STRING_ID

        Number 値の String への変換が失敗した場合に作成される FacesMessage のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。

        • {0} は、変換されていない値に置き換えられます。
        • {1} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。
        関連事項:
        定数フィールド値
    • コンストラクターの詳細

      • NumberConverter

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

      • getCurrencyCode

        public StringSE getCurrencyCode()

        currency の type で getAsString() によって使用される ISO4217 通貨コードを返します。設定されていない場合、使用される値は Locale のフォーマットに基づきます。

        戻り値:
        通貨コード
      • setCurrencyCode

        public void setCurrencyCode​(StringSE currencyCode)

        type が currency の getAsString() で使用される ISO 4217 通貨コードを設定します。

        パラメーター:
        currencyCode - 新しい通貨コード
      • getCurrencySymbol

        public StringSE getCurrencySymbol()

        currency の type で getAsString() によって使用される通貨記号を返します。設定されていない場合、使用される値は Locale のフォーマットに基づきます。

        戻り値:
        通貨記号
      • setCurrencySymbol

        public void setCurrencySymbol​(StringSE currencySymbol)

        getAsString() で使用される通貨記号を currency の type で設定します。

        パラメーター:
        currencySymbol - 新しい通貨記号
      • isGroupingUsed

        public boolean isGroupingUsed()

        必要に応じて getAsString にグループ化区切り文字を含める必要がある場合は、true を返します。変更しない場合、デフォルト値は true です。

        戻り値:
        グループ化が使用されているかどうか
      • setGroupingUsed

        public void setGroupingUsed​(boolean groupingUsed)

        必要に応じて、getAsString() にグループ化区切り文字を含める必要があるかどうかを示すフラグを設定します。

        パラメーター:
        groupingUsed - 新しいグループ化使用フラグ
      • isIntegerOnly

        public boolean isIntegerOnly()

        指定された値の整数部分のみを getAsObject() から返す必要がある場合は、true を返します。変更しない場合、デフォルト値は false です。

        戻り値:
        これが整数のみであるかどうか
      • setIntegerOnly

        public void setIntegerOnly​(boolean integerOnly)

        指定された値の整数部分のみを getAsObject() から返す必要がある場合は、true に設定します。

        パラメーター:
        integerOnly - 新しい整数のみのフラグ
      • getMaxFractionDigits

        public int getMaxFractionDigits()

        getAsString() が結果の小数部分でレンダリングする必要がある最大桁数を返します。

        戻り値:
        最大小数桁
      • setMaxFractionDigits

        public void setMaxFractionDigits​(int maxFractionDigits)

        getAsString() が結果の小数部にレンダリングする最大桁数を設定します。設定されていない場合、桁数は変換される値によって異なります。

        パラメーター:
        maxFractionDigits - 新しい制限
      • getMaxIntegerDigits

        public int getMaxIntegerDigits()

        getAsString() が結果の整数部分にレンダリングする必要がある最大桁数を返します。

        戻り値:
        最大整数桁
      • setMaxIntegerDigits

        public void setMaxIntegerDigits​(int maxIntegerDigits)

        getAsString() が結果の整数部分にレンダリングする最大桁数を設定します。設定されていない場合、桁数は変換される値によって異なります。

        パラメーター:
        maxIntegerDigits - 新しい制限
      • getMinFractionDigits

        public int getMinFractionDigits()

        getAsString() が結果の小数部分でレンダリングする必要がある最小桁数を返します。

        戻り値:
        最小小数桁
      • setMinFractionDigits

        public void setMinFractionDigits​(int minFractionDigits)

        getAsString() が結果の小数部にレンダリングする最小桁数を設定します。設定されていない場合、桁数は変換される値によって異なります。

        パラメーター:
        minFractionDigits - 新しい制限
      • getMinIntegerDigits

        public int getMinIntegerDigits()

        getAsString() が結果の整数部分にレンダリングする必要がある最小桁数を返します。

        戻り値:
        最小整数桁
      • setMinIntegerDigits

        public void setMinIntegerDigits​(int minIntegerDigits)

        getAsString() が結果の整数部分にレンダリングする最小桁数を設定します。設定されていない場合、桁数は変換される値によって異なります。

        パラメーター:
        minIntegerDigits - 新しい制限
      • getLocale

        public LocaleSE getLocale()

        数値を解析するときに使用する Locale を返します。この値が null の場合、現在のリクエストに対して 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.DecimalFormat でサポートされている値です。値が無効な場合、getAsObject() または getAsString() が呼び出されたときに ConverterException が発生します。

        パラメーター:
        pattern - 新しいフォーマットパターン
      • getType

        public StringSE getType()

        数値のフォーマットおよび解析時に使用される数値型を返します。変更しない場合、デフォルトの型は number です。

        戻り値:
      • setType

        public void setType​(StringSE type)

        数値の書式設定および解析時に使用する数値型を設定します。有効な値は、currencynumberpercent です。値が無効な場合、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