0

フォームを正常に検証し、エラーを返すことさえできます。私の問題は、ビューにコントローラーからのデータを入力する必要があるいくつかの選択があったときに始まりました。

model.addAttribute(...) を実行すると、エラーがビューに渡されなくなります:

 public String registerSubmit(@Valid @ModelAttribute("jconcorrente") Jconcorrentes concorrente, BindingResult result, HttpServletRequest request, Model model){

         if(result.hasErrors()) {
             model.addAttribute("listJdistrito", this.jdistritoService.listJdistrito());
             model.addAttribute("listJtipocodiden", this.jtipodocidenService.listJtipodociden());
             model.addAttribute("jconcorrente", new Jconcorrentes());
                return "register";
            }

私の質問は、検証エラーに影響を与えずにデータを渡すにはどうすればよいですか?

4

1 に答える 1

1

私の推測では、モデル属性の新しいインスタンスをモデルに直接追加しているため、エラーが取り込まれていないと思います。

この行を削除してみてください:

model.addAttribute("jconcorrente", new Jconcorrentes());

if ステートメントから、次のような新しいメソッドを作成します。

@ModelAttribute("jconcorrente")
public Jconcorrentes getJconcorrentes() {
    return new Jconcorrentes();
}

他のすべてを同じままにしておけば、うまくいくはずです。

于 2015-07-06T12:01:29.820 に答える