クラス NumberConverter
- 実装されているすべてのインターフェース:
PartialStateHolder、StateHolder、Converter
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 final StringSEこのコンバーターの標準コンバーター ID。static final StringSENumberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。static final StringSENumberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。static final StringSENumberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。static final StringSENumberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。static final StringSEインターフェース jakarta.faces.convert.Converter から継承されたフィールド
DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAMEコンストラクターの概要
コンストラクター方法の概要
修飾子と型メソッド説明voidPartialStateHolder を非デルタ追跡状態にリセットします。getAsObject(FacesContext context, UIComponent component, StringSE value) リクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さUIComponentに関連付けられている指定された文字列値を変換します。getAsString(FacesContext context, UIComponent component, ObjectSE value) 指定されたUIComponentに関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。typeがcurrencyであるgetAsString()によって使用される ISO 4217 通貨コードを返します。typeがcurrencyのgetAsString()で使用される通貨記号を返します。数値を解析するときに使用するLocaleを返します。intgetAsString()が結果の小数部分でレンダリングする必要がある最大桁数を返します。intgetAsString()が結果の整数部分にレンダリングする必要がある最大桁数を返します。intgetAsString()が結果の小数部分でレンダリングする必要がある最小桁数を返します。intgetAsString()が結果の整数部分にレンダリングする必要がある最小桁数を返します。数値のフォーマットおよび解析時に使用されるフォーマットパターンを返します。getType()数値のフォーマットおよび解析時に使用される数値型を返します。booleanデルタ状態の変更が追跡されている場合はtrueを返し、それ以外の場合はfalseを返します。booleangetAsStringに必要に応じてグループ化区切り文字を含める必要がある場合は、trueを返します。booleangetAsObject()から指定された値の整数部分のみを返す必要がある場合は、trueを返します。booleantrue の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。voidランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスでPartialStateHolder.markInitialState()メソッドが呼び出されることを確認する必要があります。voidrestoreState(FacesContext context, ObjectSE state) state オブジェクトのエントリから状態を復元するために必要な処理を実行します。saveState(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に設定します。void数値を解析するときに使用するLocaleを設定します。voidsetMaxFractionDigits(int maxFractionDigits) getAsString()が結果の小数部にレンダリングする最大桁数を設定します。voidsetMaxIntegerDigits(int maxIntegerDigits) getAsString()が結果の整数部分にレンダリングする最大桁数を設定します。voidsetMinFractionDigits(int minFractionDigits) 結果の小数部にgetAsString()がレンダリングする最小桁数を設定します。voidsetMinIntegerDigits(int minIntegerDigits) getAsString()が結果の整数部分にレンダリングする最小桁数を設定します。voidsetPattern(StringSE pattern) 数値の書式設定および解析時に使用する書式パターンを設定します。voidsetTransient(boolean transientFlag) このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。void数値の書式設定および解析時に使用する数値型を設定します。
フィールドの詳細
CONVERTER_ID
このコンバーターの標準コンバーター ID。
- 関連事項:
CURRENCY_ID
Numberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、変換されていない値に置き換えられます。{1}はサンプル値に置き換えられました。{2}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
NUMBER_ID
Numberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、変換されていない値に置き換えられます。{1}はサンプル値に置き換えられました。{2}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
PATTERN_ID
Numberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、変換されていない値に置き換えられます。{1}はサンプル値に置き換えられました。{2}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
PERCENT_ID
Numberへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、変換されていない値に置き換えられます。{1}はサンプル値に置き換えられました。{2}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
STRING_ID
Number値のStringへの変換が失敗した場合に作成されるFacesMessageのメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、変換されていない値に置き換えられます。{1}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
コンストラクターの詳細
NumberConverter
public NumberConverter()
メソッドの詳細
getCurrencyCode
currencyのtypeでgetAsString()によって使用される ISO4217 通貨コードを返します。設定されていない場合、使用される値はLocaleのフォーマットに基づきます。- 戻り値:
- 通貨コード
setCurrencyCode
typeがcurrencyのgetAsString()で使用される ISO 4217 通貨コードを設定します。- パラメーター:
currencyCode- 新しい通貨コード
getCurrencySymbol
currencyのtypeでgetAsString()によって使用される通貨記号を返します。設定されていない場合、使用される値はLocaleのフォーマットに基づきます。- 戻り値:
- 通貨記号
setCurrencySymbol
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
数値を解析するときに使用する
Localeを返します。この値がnullの場合、現在のリクエストに対してUIViewRootに格納されているLocaleが使用されます。- 戻り値:
- このコンバーターの
Locale
setLocale
数値を解析するときに使用する
Localeを設定します。nullに設定されている場合、現在のリクエストのためにUIViewRootに保管されているLocaleが使用されます。- パラメーター:
locale- 新しいLocale(またはnull)
getPattern
数値のフォーマットおよび解析時に使用されるフォーマットパターンを返します。
- 戻り値:
- パターン
setPattern
数値の書式設定および解析時に使用する書式パターンを設定します。有効な値は、
java.text.DecimalFormatでサポートされている値です。値が無効な場合、getAsObject()またはgetAsString()が呼び出されたときにConverterExceptionが発生します。- パラメーター:
pattern- 新しいフォーマットパターン
getType
数値のフォーマットおよび解析時に使用される数値型を返します。変更しない場合、デフォルトの型は
numberです。- 戻り値:
- 型
setType
数値の書式設定および解析時に使用する数値型を設定します。有効な値は、
currency、number、percentです。値が無効な場合、getAsObject()またはgetAsString()が呼び出されたときにConverterExceptionが発生します。- パラメーター:
type- 新しい番号スタイル
getAsObject
インターフェースからコピーされた説明:Converterリクエスト処理のライフサイクルのプロセス検証フェーズ中に格納されているに適したモデルデータオブジェクトに、指定さ
UIComponentに関連付けられている指定された文字列値を変換します。- 次で指定:
- インターフェース
ConverterのgetAsObject - パラメーター:
context- 処理中のリクエストのFacesContextcomponent- このモデルオブジェクト値が関連付けられているUIComponentvalue- 変換する文字列値 (nullの場合があります)- 戻り値:
- 変換する値が
nullの場合はnull、それ以外の場合は変換の結果 - 例外:
ConverterException- 変換が正常に実行できない場合NullPointerExceptionSE-contextまたはcomponentがnullの場合
getAsString
インターフェースからコピーされた説明:Converter指定された
UIComponentに関連付けられている指定されたモデルオブジェクトの値を、リクエスト処理ライフサイクルのレスポンスのレンダリングフェーズ中に生成されるレスポンスに含めるのに適した文字列に変換します。- 次で指定:
- インターフェース
ConverterのgetAsString - パラメーター:
context- 処理中のリクエストのFacesContextcomponent- このモデルオブジェクト値が関連付けられているUIComponentvalue- 変換するモデルオブジェクトの値 (nullの場合があります)- 戻り値:
- 値が
nullの場合は長さ 0 の文字列、それ以外の場合は変換の結果 - 例外:
ConverterException- 変換が正常に実行できない場合NullPointerExceptionSE-contextまたはcomponentがnullの場合
saveState
インターフェースからコピーされた説明:StateHolderインスタンスの状態を
Serializableオブジェクトとして取得します。このインターフェースを実装するクラスが、StateHolder を実装するインスタンス(イベントハンドラー、バリデーターなどを含む
UIComponentなど)への参照を持っている場合、このメソッドはそれらすべてのインスタンスでStateHolder.saveState(jakarta.faces.context.FacesContext)メソッドも呼び出す必要があります。このメソッドは、子とファセットの状態を保存してはなりませんそれはStateManagerを介して行われますこのメソッドは、実装オブジェクトの状態を変更してはなりません。つまり、このコードを実行した後:
Object state = component.saveState(facesContext);componentは、実行前と同じでなければなりません。このメソッドからの戻り値は
Serializableでなければなりません- 次で指定:
- インターフェース
StateHolderのsaveState - パラメーター:
context- Faces コンテキスト。- 戻り値:
- 保存された状態。
restoreState
インターフェースからコピーされた説明:StateHolderstate オブジェクトのエントリから状態を復元するために必要な処理を実行します。
このインターフェースを実装するクラスが、StateHolder も実装するインスタンスへの参照を持っている場合(イベントハンドラー、バリデーターなどを備えた
UIComponentなど)、このメソッドはそれらすべてのインスタンスでStateHolder.restoreState(jakarta.faces.context.FacesContext, java.lang.Object)メソッドも呼び出す必要があります。state引数がnullの場合、アクションを実行せずに戻ります。- 次で指定:
- インターフェース
StateHolderのrestoreState - パラメーター:
context- Faces コンテキスト。state- 状態。
isTransient
public boolean isTransient()インターフェースからコピーされた説明:StateHoldertrue の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。
- 次で指定:
- インターフェース
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()インターフェースからコピーされた説明:PartialStateHolderPartialStateHolder を非デルタ追跡状態にリセットします。
- 次で指定:
- インターフェース
PartialStateHolderのclearInitialState