不明点
今eclipseでspring boot を用いてwebアプリケーションを色々試作しています。
html(thymeleaf)から三つのパラメータを@RequestParamで受け取り処理しているのですが、
@RequestParamが一つでもnull(htmlで何も記入されない)の場合
Validation failed for object='form名'. Error count: 1
または
Validation failed for object='form名'. Error count: 2
が出てしまい、それを回避する(?)為にネットの情報の見よう見まねでBindingResultを入れています。
全てのパラメータに値が入っている場合(正常な場合)にもこのエラーが出るなら必ずvalidationチェックしなければならないんだと理解できるのですが、
なぜnullの場合のみこれが必要なのかが調べてもいまいちわかりませんし、BindingResultは調べていると
入力値が妥当かどうかの結果を返しているはずなのに、いれるだけでエラーを回避できるというのはどういったことなのか
わからず質問させて頂きました。
該当のソースコード
html
1<input type="date" name="date"> 2<input type="text" name="no"> 3<input type="text" name="fileno">
java
1 @RequestMapping(value="/test", params="search", method=RequestMethod.POST) 2 public String search(@RequestParam (name = "date", required = false) String date, 3 @RequestParam (name = "no", required = false) Long no, 4 @RequestParam (name = "fileno", required = false) Integer fileno, 5 @ModelAttribute Testform testform, BindingResult result, Model model) {
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/10 04:23