【发布时间】:2014-07-24 07:01:06
【问题描述】:
我有这个。
public class ExampleForm implements java.io.Serializable {
private static final long serialVersionUID = 1L;
private Integer idexample;
private String name;
private SomeEntity1 someEntity1;
private SomeEntity2 someEntity2;
// Constructor, getters and setters...
}
我在jsp中有2个表单,第一个只使用SomeEntity1,第二个使用SomeEntity2。如何在同一控制器中进行单独验证?这是可能的?。我的主要问题是,如果我尝试验证 SomeEntity2 它会尝试验证第一个并且为 Null。
编辑:添加控制器代码。
@InitBinder
protected void initBinder(final WebDataBinder binder) {
final CustomDateEditor editor = new CustomDateEditor(dateFormat, true);
binder.registerCustomEditor(Date.class, editor);
if (binder.getTarget() instanceof ExampleForm) {
binder.setValidator(this.ExampleValidator);
}
}
@RequestMapping(value = "/ex/addEntity1", method = RequestMethod.GET)
public String addfirst(@Valid @ModelAttribute final ExampleForm exampleForm, final ModelMap model, final HttpSession session) {
//Do some stuff
}
@RequestMapping(value = "/ex/addEntity2", method = RequestMethod.GET)
public String addsecond(@Valid @ModelAttribute final ExampleForm exampleForm, final ModelMap model, final HttpSession session) {
//Do some stuff
}
【问题讨论】:
-
拜托,你能发布你的控制器代码吗?
标签: java validation spring-mvc