クラス LengthValidator
- 実装されているすべてのインターフェース:
PartialStateHolder、StateHolder、Validator、EventListenerSE
LengthValidator は、関連するコンポーネントの値の文字列表現の文字数をチェックする Validator です。次のアルゴリズムが実装されています。
- 必要に応じて、
toString()メソッドを呼び出して、渡された値を文字列に変換します。 - この
Validatorでmaximumプロパティが構成されている場合は、変換された文字列の長さをこの制限と照合します。文字列の長さが指定された最大値より大きい場合は、MAXIMUM_MESSAGE_ID メッセージを含むValidatorExceptionをスローします。 - この
Validatorでminimumプロパティが構成されている場合は、変換された文字列の長さをこの制限と照合します。文字列の長さが指定された最小値より短い場合は、MINIMUM_MESSAGE_ID メッセージを含むValidatorExceptionをスローします。
ValidatorException がスローされる上記のすべてのケースで、検証パラメーターと一致するパラメーターがメッセージにある場合、これらのパラメーターの値は、コンバーター ID jakarta.faces.Number でアプリケーションに登録された Converter を使用して変換する必要があります。これにより、現在の Locale に従って値をローカライズできます。
フィールドのサマリー
フィールド修飾子と型フィールド説明static final StringSE最大長のチェックが失敗した場合に作成されるFacesMessageのメッセージ識別子。static final StringSE最小長のチェックが失敗した場合に作成されるFacesMessageのメッセージ ID。static final StringSEこのバリデーターの標準バリデーター ID。コンストラクターの概要
コンストラクターコンストラクター説明事前構成された制限のないValidatorを構築します。LengthValidator(int maximum) 指定された事前構成された制限でValidatorを構築します。LengthValidator(int maximum, int minimum) 指定された事前構成された制限でValidatorを構築します。方法の概要
修飾子と型メソッド説明voidPartialStateHolder を非デルタ追跡状態にリセットします。booleanintこのValidatorによって適用される最大長、または最大長が設定されていない場合は0を返します。intこのValidatorによって適用される最小の長さ、または最小値が設定されていない場合は0を返します。inthashCode()booleanデルタ状態の変更が追跡されている場合はtrueを返し、それ以外の場合はfalseを返します。booleantrue の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。voidランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスでPartialStateHolder.markInitialState()メソッドが呼び出されることを確認する必要があります。voidrestoreState(FacesContext context, ObjectSE state) state オブジェクトのエントリから状態を復元するために必要な処理を実行します。saveState(FacesContext context) インスタンスの状態をSerializableオブジェクトとして取得します。voidsetMaximum(int maximum) このValidatorによって適用される最大長を設定します。voidsetMinimum(int minimum) このValidatorによって適用される最小の長さを設定します。voidsetTransient(boolean transientValue) このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。voidvalidate(FacesContext context, UIComponent component, ObjectSE value)
フィールドの詳細
VALIDATOR_ID
このバリデーターの標準バリデーター ID。
- 関連事項:
MAXIMUM_MESSAGE_ID
最大長のチェックが失敗した場合に作成される
FacesMessageのメッセージ識別子。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、構成された最大長に置き換えられました。{1}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
MINIMUM_MESSAGE_ID
最小長のチェックが失敗した場合に作成される
FacesMessageのメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}は、構成された最小長に置き換えられました。{1}は、値がこのメッセージを生成した入力コンポーネントのラベルであるStringに置き換えられました。
- 関連事項:
コンストラクターの詳細
LengthValidator
public LengthValidator()事前構成された制限のない
Validatorを構築します。LengthValidator
public LengthValidator(int maximum) 指定された事前構成された制限で
Validatorを構築します。- パラメーター:
maximum- 許可する最大値
LengthValidator
public LengthValidator(int maximum, int minimum) 指定された事前構成された制限で
Validatorを構築します。- パラメーター:
maximum- 許可する最大値minimum- 許可する最小値
メソッドの詳細
getMaximum
public int getMaximum()この
Validatorによって適用される最大長、または最大長が設定されていない場合は0を返します。- 戻り値:
- 最大
setMaximum
public void setMaximum(int maximum) この
Validatorによって適用される最大長を設定します。- パラメーター:
maximum- 新しい最大値
getMinimum
public int getMinimum()この
Validatorによって適用される最小の長さ、または最小値が設定されていない場合は0を返します。- 戻り値:
- 最小値
setMinimum
public void setMinimum(int minimum) この
Validatorによって適用される最小の長さを設定します。- パラメーター:
minimum- 新しい最小値
validate
public void validate(FacesContext context, UIComponent component, ObjectSE value) throws ValidatorException インターフェースからコピーされた説明:Validator指定された
UIComponentに対してこのValidatorによって実装正しさのチェックを行います。違反が見つかった場合は、障害を説明するFacesMessageを含むValidatorExceptionがスローされます。バリデーターがバージョン 2 以降の仕様に完全に準拠するためには、
nullまたは空の値に対処することを特に意図していない限り、nullまたは空の値の検証に失敗してはなりません。アプリケーション全体の<context-param>は、Jakarta Faces 1.2 用に設計されたバリデーターが Jakarta Faces 2 以降で動作できるようにするために提供されています。この下位互換性の動作を有効にするには、jakarta.faces.VALIDATE_EMPTY_FIELDS<context-param>をfalseに設定する必要があります。- 次で指定:
- インターフェース
Validatorのvalidate - パラメーター:
context- 処理中のリクエストの FacesContextcomponent- 正当性をチェックしている UIComponentvalue- 検証する値- 例外:
NullPointerExceptionSE-contextまたはcomponentがnullの場合ValidatorException- 検証が失敗した場合
equals
hashCode
public int hashCode()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 transientValue) インターフェースからコピーされた説明:StateHolderこのインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。
- 次で指定:
- インターフェース
StateHolderのsetTransient - パラメーター:
transientValue- このオブジェクトが 状態の保存または復元に参加しない場合はブール値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