クラス LengthValidator
- java.lang.ObjectSE
-
- jakarta.faces.validator.LengthValidator
- 実装されたすべてのインターフェース:
PartialStateHolder
、StateHolder
、Validator
、EventListenerSE
public class LengthValidator extends ObjectSE implements Validator, PartialStateHolder
LengthValidator は、関連するコンポーネントの値の文字列表現の文字数をチェックする
Validator
です。次のアルゴリズムが実装されています。- 必要に応じて、
toString()
メソッドを呼び出して、渡された値を文字列に変換します。 - この
Validator
でmaximum
プロパティが構成されている場合は、変換された文字列の長さをこの制限と照合します。文字列の長さが指定された最大値より大きい場合は、MAXIMUM_MESSAGE_ID メッセージを含むValidatorException
をスローします。 - この
Validator
でminimum
プロパティが構成されている場合は、変換された文字列の長さをこの制限と照合します。文字列の長さが指定された最小値より短い場合は、MINIMUM_MESSAGE_ID メッセージを含むValidatorException
をスローします。
ValidatorException
がスローされる上記のすべてのケースで、検証パラメーターと一致するパラメーターがメッセージにある場合、これらのパラメーターの値は、コンバーター IDjakarta.faces.Number
でアプリケーションに登録されたConverter
を使用して変換する必要があります。これにより、現在のLocale
に従って値をローカライズできます。
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 static StringSE
MAXIMUM_MESSAGE_ID
最大長のチェックが失敗した場合に作成されるFacesMessage
のメッセージ識別子。static StringSE
MINIMUM_MESSAGE_ID
最小長のチェックが失敗した場合に作成されるFacesMessage
のメッセージ ID。static StringSE
VALIDATOR_ID
このバリデーターの標準バリデーター ID。
コンストラクターのサマリー
コンストラクター コンストラクター 説明 LengthValidator()
事前構成された制限のないValidator
を構築します。LengthValidator(int maximum)
指定された事前構成された制限でValidator
を構築します。LengthValidator(int maximum, int minimum)
指定された事前構成された制限でValidator
を構築します。
メソッドのサマリー
すべてのメソッド インスタンスメソッド 具象メソッド 修飾子と型 メソッド 説明 void
clearInitialState()
PartialStateHolder を非デルタ追跡状態にリセットします。boolean
equals(ObjectSE otherObj)
int
getMaximum()
このValidator
によって適用される最大長、または最大長が設定されていない場合は0
を返します。int
getMinimum()
このValidator
によって適用される最小の長さ、または最小値が設定されていない場合は0
を返します。int
hashCode()
boolean
initialStateMarked()
デルタ状態の変更が追跡されている場合はtrue
を返し、それ以外の場合はfalse
を返します。boolean
isTransient()
true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。void
markInitialState()
ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスでPartialStateHolder.markInitialState()
メソッドが呼び出されることを確認する必要があります。void
restoreState(FacesContext context, ObjectSE state)
state オブジェクトのエントリから状態を復元するために必要な処理を実行します。ObjectSE
saveState(FacesContext context)
インスタンスの状態をSerializable
オブジェクトとして取得します。void
setMaximum(int maximum)
このValidator
によって適用される最大長を設定します。void
setMinimum(int minimum)
このValidator
によって適用される最小の長さを設定します。void
setTransient(boolean transientValue)
このインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。void
validate(FacesContext context, UIComponent component, ObjectSE value)
フィールドの詳細
MAXIMUM_MESSAGE_ID
public static final StringSE MAXIMUM_MESSAGE_ID
最大長のチェックが失敗した場合に作成される
FacesMessage
のメッセージ識別子。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。{0}
は、構成された最大長に置き換えられました。{1}
は、値がこのメッセージを生成した入力コンポーネントのラベルであるString
に置き換えられました。
- 関連事項:
- 定数フィールド値
MINIMUM_MESSAGE_ID
public static final StringSE 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
- 検証が失敗した場合
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 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()
インターフェースからコピーされた説明:PartialStateHolder
PartialStateHolder を非デルタ追跡状態にリセットします。
- 次で指定:
- インターフェース
PartialStateHolder
のclearInitialState