springmvc处理json请求

时间:2012-03-02 19:49:31

标签: json spring spring-mvc

我理解如果我使用springMVC并将json对象传递给控制器​​,它会尝试将json对象绑定到控制器pararmenter,但是如何处理绑定错误?我使用这样的东西,但似乎没有用户。

public String save(@RequestBody @Valid SomeList list, BindingResult result){
    if(result.hasError()){
        System.out.println(result);
        }
}

2 个答案:

答案 0 :(得分:1)

通常,您可以返回提交数据的相同视图。如果您有<form:error>个标签,则会显示它们(因为绑定信息)。

但这肯定是一个ajax调用,所以你可以做的是在if体中设置一个特定的响应状态:

response.setStatus(HttpServletResponse.NOT_ACCEPTABLE);

然后在ajax响应处理程序中查找该状态代码(406)。如果您需要精确的验证信息,可以尝试将绑定结果本身序列化为响应。

答案 1 :(得分:0)

System.out.println几乎不做任何事情。基本上它所说的是将绑定结果输出到服务器jvm std out。

由于您正在返回一个String,我将假设您正在返回一个视图名称,因此您可能希望将用户重定向到错误页面。