public class LengthValidator extends ObjectSE implements Validator, PartialStateHolder
LengthValidator は、関連するコンポーネントの値の文字列表現の文字数をチェックする Validator です。次のアルゴリズムが実装されています。
toString() メソッドを呼び出して、渡された値を文字列に変換します。Validator で maximum プロパティが構成されている場合は、変換された文字列の長さをこの制限と照合します。文字列の長さが指定された最大値より大きい場合は、MAXIMUM_MESSAGE_ID メッセージを含む ValidatorException をスローします。Validator で minimum プロパティが構成されている場合は、変換された文字列の長さをこの制限と照合します。文字列の長さが指定された最小値より短い場合は、MINIMUM_MESSAGE_ID メッセージを含む ValidatorException をスローします。ValidatorException がスローされる上記のすべてのケースで、検証パラメーターと一致するパラメーターがメッセージにある場合、これらのパラメーターの値は、コンバーター ID jakarta.faces.Number でアプリケーションに登録された Converter を使用して変換する必要があります。これにより、現在の Locale に従って値をローカライズできます。
| 修飾子と型 | フィールドと説明 | 
|---|---|
| static StringSE | MAXIMUM_MESSAGE_ID 最大長のチェックが失敗した場合に作成される  FacesMessageのメッセージ識別子。 | 
| static StringSE | MINIMUM_MESSAGE_ID 最小長のチェックが失敗した場合に作成される  FacesMessageのメッセージ ID。 | 
| static StringSE | VALIDATOR_ID このバリデーターの標準バリデーター ID。 | 
NOT_IN_RANGE_MESSAGE_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() デルタ状態の変更が追跡されている場合は  | 
| boolean | isTransient()true の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。 | 
| void | 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) | 
cloneSE, finalizeSE, getClassSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic static final StringSE MAXIMUM_MESSAGE_ID
 最大長のチェックが失敗した場合に作成される FacesMessage のメッセージ識別子。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。
{0} は、構成された最大長に置き換えられました。{1} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。public static final StringSE MINIMUM_MESSAGE_ID
 最小長のチェックが失敗した場合に作成される FacesMessage のメッセージ ID。このメッセージのメッセージフォーマット文字列には、オプションで次のプレースホルダーを含めることができます。
{0} は、構成された最小長に置き換えられました。{1} は、値がこのメッセージを生成した入力コンポーネントのラベルである String に置き換えられました。public LengthValidator()
 事前構成された制限のない Validator を構築します。
public LengthValidator(int maximum)
 指定された事前構成された制限で Validator を構築します。
maximum - 許可する最大値 public LengthValidator(int maximum,
                       int minimum) 指定された事前構成された制限で Validator を構築します。
maximum - 許可する最大値 minimum - 許可する最小値 public int getMaximum()
 この Validator によって適用される最大長、または最大長が設定されていない場合は 0 を返します。
public void setMaximum(int maximum)
 この Validator によって適用される最大長を設定します。
maximum - 新しい最大値 public int getMinimum()
 この Validator によって適用される最小の長さ、または最小値が設定されていない場合は 0 を返します。
public void setMinimum(int minimum)
 この Validator によって適用される最小の長さを設定します。
minimum - 新しい最小値 public void validate(FacesContext context, UIComponent component, ObjectSE value) throws ValidatorException
Validator 指定された UIComponent に対してこの Validator によって実装正しさのチェックを行います。違反が見つかった場合は、障害を説明する FacesMessage を含む ValidatorException がスローされます。
 バリデーターがバージョン 2 以降の仕様に完全に準拠するためには、null または空の値に対処することを特に意図していない限り、null または空の値の検証に失敗してはなりません。アプリケーション全体の <context-param> は、Jakarta Server Faces 1.2 用に設計されたバリデーターが Jakarta Server Faces 2 以降で動作できるようにするために提供されています。この下位互換性の動作を有効にするには、jakarta.faces.VALIDATE_EMPTY_FIELDS <context-param> を false に設定する必要があります。
Validator の validate context - 処理中のリクエストの FacesContextcomponent - 正当性をチェックしている UIComponentvalue - 検証する値 NullPointerExceptionSE - context または component が null の場合 ValidatorException - 検証が失敗した場合 public int hashCode()
ObjectSE の hashCodeSE 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 コンテキスト。public void restoreState(FacesContext context, ObjectSE state)
StateHolderstate オブジェクトのエントリから状態を復元するために必要な処理を実行します。
 このインターフェースを実装するクラスが、StateHolder も実装するインスタンスへの参照を持っている場合(イベントハンドラー、バリデーターなどを備えた UIComponent など)、このメソッドはそれらすべてのインスタンスで StateHolder.restoreState(jakarta.faces.context.FacesContext, java.lang.Object) メソッドも呼び出す必要があります。
state 引数が null の場合、アクションを実行せずに戻ります。
StateHolder の restoreState context - Faces コンテキスト。state - 状態。public boolean isTransient()
StateHoldertrue の場合、このインターフェースを実装するオブジェクトは、状態の保存または復元に参加してはなりません。
StateHolder の isTransient true、それ以外の場合は false。public void setTransient(boolean transientValue)
StateHolderこのインターフェースを実装するオブジェクトが状態の保存または復元に参加する必要があるかどうかを示します。
StateHolder の setTransient transientValue - このオブジェクトが  状態の保存または復元に参加しない場合はブール値 true を渡し、それ以外の場合は false を渡します。public void markInitialState()
PartialStateHolder ランタイムは、コンポーネントが初期状態であることを示すために、適切な時間にビュー内のこのインターフェースの各インスタンスで PartialStateHolder.markInitialState() メソッドが呼び出されることを確認する必要があります。インターフェースの実装者は、markInitialState() が呼び出されてから PartialStateHolder.clearInitialState() が呼び出されるまで PartialStateHolder.initialStateMarked() が true を返すことを確認する必要があります。その後、initialStateMarked() は false を返す必要があります。また、インスタンスが initialStateMarked() から true を返す間、実装は StateHolder.saveState(jakarta.faces.context.FacesContext) の実装で変更された状態のみを返す必要があります。
PartialStateHolder の markInitialState public boolean initialStateMarked()
PartialStateHolder デルタ状態の変更が追跡されている場合は true を返し、それ以外の場合は false を返します。
PartialStateHolder の initialStateMarked true、それ以外の場合は false。public void clearInitialState()
PartialStateHolderPartialStateHolder を非デルタ追跡状態にリセットします。
PartialStateHolder の clearInitialState Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.