自分用の覚書のつもりで書いています。
書きかけです。
【 はまったポイント:パラメータの順番】
public String confirm(HttpServletRequest request, Model model
, @Validated @ModelAttribute("user") User user
, @RequestParam("mode") String mode
, BindingResult result) {
だと結果が、
になりました。
で、以下のように、
@Validated をつけたパラメータと、BindingResult を並べる形に、
パラメータの並び順を変更しました。
public String confirm(HttpServletRequest request, Model model
, @RequestParam("mode") String mode
, @Validated @ModelAttribute("user") User user
, BindingResult result) {
これで成功しました。
【参考になるサイト】
制約条件の使い方がわかりやすい
VALIDATOR リファレンスガイド
メッセージのデフォルト値はここで見られるっぽい
Git > ValidationMessages.properties