Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)

[目次][用語][索引][前へ][次へ]

10.5.2 CDIからBean Validationの利用手順

ここでは,CDIからBean Validationを利用するための手順を示します。

<この項の構成>
(1) 利用前に必要な手順
(2) 実装例

(1) 利用前に必要な手順

CDIでBean Validationによる検証処理を行うためには,次の手順が必要になります。

  1. ユーザアプリケーションクラスで@Injectアノテーションを使って,ValidatorFactoryを注入してください。
    例:@Inject private ValidatorFactory validatorFactory
  2. Validatorオブジェクトを得るために,Bean ValidationからユーザアプリケーションのvalidatorFactory.getValidator()を呼びます。
  3. 最後に,ユーザアプリケーションからvalidator.validate()メソッドを呼び,検証するBeanクラスを渡します。

(2) 実装例

CDIからBean Validationを使用する場合の実装例を示します。

まず,検証が必要な情報を登録するサーブレットの実装例を示します。

public class EmployeeServBv extends HttpServlet{
@Inject  private ValidatorFactory validatorFactory;
@Inject BV_CDI bean;
 
   public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException{
   Validator validator = validatorFactory.getValidator();
      validator.validate(bean);
   }
}

この例では,BV_CDI beanでBean Validationのアノテーションを適用しています。

検証対象のデータを格納するBeanに対する検証定義の実装例を次に示します。

import javax.validation.constraints.NotNull;
public class BV_CDI{
        @NotNull
        private String name;
        public String getName(){
                return name; 
        }
        public void setName(String name){
                this.name = name;
        }
}