我理解如果我使用springMVC并将json对象传递给控制器,它会尝试将json对象绑定到控制器pararmenter,但是如何处理绑定错误?我使用这样的东西,但似乎没有用户。
public String save(@RequestBody @Valid SomeList list, BindingResult result){
if(result.hasError()){
System.out.println(result);
}
}
答案 0 :(得分:1)
通常,您可以返回提交数据的相同视图。如果您有<form:error>
个标签,则会显示它们(因为绑定信息)。
但这肯定是一个ajax调用,所以你可以做的是在if体中设置一个特定的响应状态:
response.setStatus(HttpServletResponse.NOT_ACCEPTABLE);
然后在ajax响应处理程序中查找该状态代码(406)。如果您需要精确的验证信息,可以尝试将绑定结果本身序列化为响应。
答案 1 :(得分:0)
System.out.println几乎不做任何事情。基本上它所说的是将绑定结果输出到服务器jvm std out。
由于您正在返回一个String,我将假设您正在返回一个视图名称,因此您可能希望将用户重定向到错误页面。