ソフトウェアエンジニアの日常の雑記

日々思ったことをまとめます

Spring5 Reactive(webflux)での@validのBindingResultの書き方かわってたのでメモ

本家はこちら

もしかしたらwebflux関係ないかもだけど、Spring5 Reactive触ってたら、(@valid Form form , BindingResult bindingResult) こんなのが動かなくて調べたらメソッドとして独立するようになっていた

こんな感じ。 modelも引数にとれるので、viewを使ってるときは、これで対応可能。

@ExceptionHandler(WebExchangeBindException.class)
    @ResponseStatus(HttpStatus.BAD_REQUEST)
    public Object handleException(WebExchangeBindException errors, Model model){
        Response response = new Response();
        response.setErrors(errors.getBindingResult());
        return response;
    }