public class CodeValueValidator extends StringValidatorSupport<CodeValue>
CodeValueで指定したコード値と、プロパティの値が合致するかチェックする。
使用するための設定
本バリデータを使用するためにはデフォルトのメッセージIDを指定する必要がある。
<component name="codeValueValidator" class="nablarch.common.code.validator.CodeValueValidator">
<property name="messageId" value="MSGXXXXXX"/>
</component>
プロパティの設定
プロパティのセッタにCodeValueアノテーションを次のように設定する。
genderがcodeIdとpatternで選択された値と合致するかチェック
@PropertyName("性別")
@CodeValue(codeId="0001", pattern="PATTERN1")
public String setGender(String gender) {
this.gender = gender;
}
genderがコード値として有効であるかのみをチェック
@PropertyName("性別")
@CodeValue(codeId="0001")
public String setGender(String gender) {
this.gender = gender;
}
| コンストラクタと説明 |
|---|
CodeValueValidator() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
CodeValue |
createAnnotation(java.util.Map<java.lang.String,java.lang.Object> params)
指定されたパラメータを属性値とするアノテーションオブジェクトを作成する。
|
java.lang.Class<? extends java.lang.annotation.Annotation> |
getAnnotationClass()
対応するアノテーションのクラスを取得する。
|
void |
setMessageId(java.lang.String messageId)
コードに含まれない値が指定された場合のデフォルトのエラーメッセージのメッセージIDを設定する。
|
<T> boolean |
validateSingleValue(ValidationContext<T> context,
java.lang.String propertyName,
java.lang.Object propertyDisplayObject,
CodeValue codeValue,
java.lang.String value)
1つの入力値に対するバリデーションを行う。
|
validate, validatepublic void setMessageId(java.lang.String messageId)
messageId - コードに含まれない値が指定された場合のデフォルトのエラーメッセージのメッセージIDpublic java.lang.Class<? extends java.lang.annotation.Annotation> getAnnotationClass()
public <T> boolean validateSingleValue(ValidationContext<T> context, java.lang.String propertyName, java.lang.Object propertyDisplayObject, CodeValue codeValue, java.lang.String value)
validateSingleValue クラス内 StringValidatorSupport<CodeValue>T - バリデーション結果で取得できる型context - バリデーションコンテキストpropertyName - プロパティ名propertyDisplayObject - プロパティの表示名オブジェクトcodeValue - アノテーションvalue - バリデーション対象の値public CodeValue createAnnotation(java.util.Map<java.lang.String,java.lang.Object> params)
StringValidatorSupportcreateAnnotation クラス内 StringValidatorSupport<CodeValue>params - アノテーションの属性値を格納したMap