クラス NumberConverter
- java.lang.ObjectSE
-
- jakarta.faces.convert.NumberConverter
- 実装されたすべてのインターフェース:
PartialStateHolder
、StateHolder
、Converter
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)
メソッドが呼び出されます。- 結果の整数部分と小数部分の最小桁数と最大桁数は、
maxFractionDigits
、maxIntegerDigits
、minFractionDigits
、minIntegerDigits
プロパティに設定された値に基づいて構成されます。 - 型が
currency
に設定されている場合、currencyCode
またはcurrencySymbol
プロパティのいずれかを使用して、使用する通貨記号を構成することもできます。両方が設定されている場合、currencyCode
の値が JDK 1.4(またはそれ以降)JVM で優先されます。それ以外の場合は、currencySymbol
の値が優先されます。
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 static StringSE
CONVERTER_ID
このコンバーターの標準コンバーター ID。static StringSE
CURRENCY_ID
Number
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
NUMBER_ID
Number
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
PATTERN_ID
Number
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
PERCENT_ID
Number
への変換が失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
STRING_ID
インターフェース jakarta.faces.convert.Converter から継承されたフィールド
DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME
コンストラクターのサマリー
コンストラクター コンストラクター 説明 NumberConverter()
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
clearInitialState()
PartialStateHolder を非デルタ追跡状態にリセットします。ObjectSE
getAsObject(FacesContext context, UIComponent component, StringSE value)
リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さUIComponent
に関連付けられている指定された文字列値を変換します。StringSE
getAsString(FacesContext context, UIComponent component, ObjectSE value)
指定されたUIComponent
に関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。StringSE
getCurrencyCode()
type
がcurrency
であるgetAsString()
によって使用される ISO 4217 通貨コードを返します。StringSE
getCurrencySymbol()
type
がcurrency
のgetAsString()
で使用される通貨記号を返します。LocaleSE
getLocale()
数値を解析するときに使用するLocale
を返します。int
getMaxFractionDigits()
getAsString()
が結果の小数部分でレンダリングする必要がある最大桁数を返します。int
getMaxIntegerDigits()
getAsString()
が結果の整数部分にレンダリングする必要がある最大桁数を返します。int
getMinFractionDigits()
getAsString()
が結果の小数部分でレンダリングする必要がある最小桁数を返します。int
getMinIntegerDigits()
getAsString()
が結果の整数部分にレンダリングする必要がある最小桁数を返します。StringSE
getPattern()
数値のフォーマットおよび解析時に使用されるフォーマットパターンを返します。StringSE
getType()
数値のフォーマットおよび解析時に使用される数値型を返します。boolean
initialStateMarked()
デルタ状態の変更が追跡されている場合はtrue
を返し、それ以外の場合はfalse
を返します。boolean
isGroupingUsed()
getAsString
に必要に応じてグループ化区切り文字を含める必要がある場合は、true
を返します。boolean
isIntegerOnly()
getAsObject()
から指定された値の整数部分のみを返す必要がある場合は、true
を返します。boolean
isTransient()
true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。void
markInitialState()
ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスでPartialStateHolder.markInitialState()
メソッドが呼び出されることを確認する必要があります。void
restoreState(FacesContext context, ObjectSE state)
state オブジェクトのエントリから状態を復元するために必要な処理を実行します。ObjectSE
saveState(FacesContext context)
インスタンスの状態をSerializable
オブジェクトとして取得します。void
setCurrencyCode(StringSE currencyCode)
type
がcurrency
のgetAsString()
で使用される ISO 4217 通貨コードを設定します。void
setCurrencySymbol(StringSE currencySymbol)
getAsString()
で使用される通貨記号をcurrency
のtype
で設定します。void
setGroupingUsed(boolean groupingUsed)
必要に応じて、getAsString()
にグループ化区切り文字を含める必要があるかどうかを示すフラグを設定します。void
setIntegerOnly(boolean integerOnly)
指定された値の整数部分のみをgetAsObject()
から返す必要がある場合は、true
に設定します。void
setLocale(LocaleSE locale)
数値を解析するときに使用するLocale
を設定します。void
setMaxFractionDigits(int maxFractionDigits)
getAsString()
が結果の小数部にレンダリングする最大桁数を設定します。void
setMaxIntegerDigits(int maxIntegerDigits)
getAsString()
が結果の整数部分にレンダリングする最大桁数を設定します。void
setMinFractionDigits(int minFractionDigits)
結果の小数部にgetAsString()
がレンダリングする最小桁数を設定します。void
setMinIntegerDigits(int minIntegerDigits)
getAsString()
が結果の整数部分にレンダリングする最小桁数を設定します。void
setPattern(StringSE pattern)
数値の書式設定および解析時に使用する書式パターンを設定します。void
setTransient(boolean transientFlag)
このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。void
setType(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
に置き換えられました。
- 関連事項:
- 定数フィールド値
メソッドの詳細
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)
数値の書式設定および解析時に使用する数値型を設定します。有効な値は、
currency
、number
、percent
です。値が無効な場合、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