@Target(value={METHOD,FIELD}) @Retention(value=RUNTIME) @Documented @Constraint(validatedBy=DomainValidator.class) @Published public @interface Domain
ドメイン定義
ドメインはBeanで定義する。 Beanの各プロパティがそれぞれドメイン定義となり、 プロパティ名がドメイン名となる。バリデーション条件のアノテーションの詳細はpublic class SampleDomain
{@Length(max = 10)
@SystemChar(charsetDef="全角文字") String name;
}
nablarch.core.validation.ee
パッケージのjavadocを参照。
ドメインマネージャの設定
上で定義したドメインを使用するためにドメインマネージャを設定する必要がある。 次のように、DomainManager
を実装したクラスを用意し、
"domainManager" という名前でコンポーネント定義する。
import nablarch.core.validation.ee.DomainManager; public class SampleDomainManager implements DomainManager<SampleDomain>
{@Override public Class<SampleDomain> getDomainBean() { return SampleDomain.class; }
}
<component name="domainManager" class="com.example.SampleDomainManager"/>
ドメイン指定
定義したドメインをバリデーション対象のBean(Formなど)のプロパティに次のように設定する。 継承時にバリデーションの設定を引き継ぐためにプロパティのgetterに本アノテーションを設定することを推奨する。public class SampleBean
{private String name;
@Domain("name") public String getName() { return name; }
}
Modifier and Type | Required Element and Description |
---|---|
java.lang.String |
value
ドメイン名
|