65283
JavaEEで部署管理アプリを作っています。  
部署番号（deptNo）に正の整数以外を入力したら画面上でエラーが表示されるようにしたいです。  
入力値検証アノテーションを使う方法をご教授頂きたくお願いします。

```

    /**
     * 編集画面のバッキングBean
     */
    @Model
    @ViewScoped
    public class EditBean extends AbstractBean implements Serializable {
    
        @Inject
        private EditLogic logic;
        private Long id;
        private String deptName;
        private Integer deptNo;
        private String loc;
        private Integer versionNo;
        private boolean disableId;
    
    
```

```

        /**
         * 保存ボタン押下時処理
         * @return 遷移先画面
         */
        @Auth
        public String save(){
            logic.save(this);
            FacesContext context = FacesContext.getCurrentInstance();
            context.addMessage("", CommonUtil.getFacesInfoMessage("messages.add.complete"));
            return null;
        }
    
```

```

        /**
         * 保存処理
         * @param bean 編集画面のバッキングBean
         */
        @Override
        public void save(EditBean bean){
            Dept dept = new Dept();
            dept.setId(bean.getId());
            dept.setDeptName(bean.getDeptName());
            dept.setDeptNo(bean.getDeptNo());
            dept.setLoc(bean.getLoc());
            if(bean.getVersionNo() != null){
                dept.setVersionNo(bean.getVersionNo());
            }else{
            }
    
            if(bean.isDisableId()){
                // 更新
                dao.update(dept);
                bean.setVersionNo(dept.getVersionNo());
            }else{
                // 新規登録
                dao.insert(dept);
                bean.setDisableId(true);
            }
        }
    
    
```
CC BY-SA 4.0
2020-04-01T07:06:49.887
65275
2020-04-01T12:20:19.233
2020-04-01T08:49:29.457
question
java-ee
JavaEEアプリでアノテーションを用いて入力値を正の整数か検証したい
試していませんが、おそらく、こんな感じではないかと思います。

```

    @Min(value = 1, message = "{deptNo.should.be.greater.than.1}")
    private Integer deptNo;
    
```

`deptNo.should.be.greater.than.1`はメッセージのプロパティー・キーです。
CC BY-SA 4.0
2020-04-01T12:20:19.233
65283
2020-04-01T12:20:19.233
21092
65275
answer