Direct Field Access とメソッドレベルのバリデーション

(備忘録)

Spring Boot 1.3 の @Restcontroller で、GET 時のバリデーション

DataBinder で、initDirectFieldAccess() を設定


ハンドラー

@RequestMapping(method = RequestMethod.GET)
public Response search( @ModelAttribute @Validated Criteria criteria) {
        List<Item> items= planService.search();
        return new Response(items);
 }

検索条件のバリデーション

public class Criteria {

    @AssertTrue
    private boolean isValid() {
        return false;
    }
}

メソッドの型が、 プリミティブ boolean だと動作するが、ラッパークラスの Boolean だと動作しない。
バグ?