Spring 3 と JSR 303 を使用しています。ネストされたオブジェクトを検証する必要があるフォーム バッキング オブジェクトがあります。以下の例で、formObject.getFoo().getBean() を検証するにはどうすればよいですか? 以下のコードを実行すると、検証が失敗するはずの HTML ページが何も送信しない場合でも、結果パラメーターは常に空になります。を呼び出して手動で検証すると、機能する(つまり、検証が失敗する)ことに注意してくださいvalidate(formObject.getFoo().getBean(), Bean.class)
。
@Controller
public class FormController {
@RequestMapping(method = RequestMethod.POST)
public void process(HttpServletRequest request, @Valid FormObject formObject, BindingResult result) {
...
}
// This is the class that needs to be validated.
public class Bean {
@NotBlank
private String name;
}
public class Foo {
private Bean bean;
}
public class FormObject {
private Foo foo;
}
}