@Target(value={METHOD,FIELD}) @Retention(value=RUNTIME) @Documented @Constraint(validatedBy=nablarch.core.validation.ee.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;
         }
     }