Spring MVC如何记录BindingResult中的所有错误

时间:2016-07-21 07:42:18

标签: spring model-view-controller controller

我有一个制作post方法的控制器。控制器的方法验证实体。如果发生某些错误,它会重定向到错误页面,否则会保存实体。我的代码看起来像这样:

public String createEntity(Entity entity, BindingResult result) {
   // Validate here
   if(result.hasErrors) {
     return "errorPage";
   }

   service.create(entity);
   return "some view";
}

所以现在如果有错误我想记录它们。我读过这篇文章

How to get error text in controller from BindingResult

但我不想输入支票。

有一种聪明的方法吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

将错误列表添加到模型中非常简单

public String createEntity(Entity entity, BindingResult result,Model model) {
   // Validate here
   if(result.hasErrors) {
     model.addAttribute("errors",result.getAllErrors());
     return "errorPage";
   }else {
      service.create(entity);
      return "some view";
   }
}

稍后在你的jsp:

<c:if test="${not empty errors}">
//foreach element show error (just an exampl)
</c:if>