码迷,mamicode.com
首页 > 编程语言 > 详细

Spring MVC Neither BindingResult nor plain target object for bean

时间:2015-02-05 18:23:39      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:

使用Spring MVC时可能会遇到这个问题。

Neither BindingResult nor plain target object for bean 

这句话里有两个信息:

(1)plain target object : 这是指JSP页面中有一个 modelAttribute (例如叫A),而 返回的模型Model中没有这个A。

这个问题,一般比较容易发现。


(2)不仅(1)没有,BindingResult也没有。 这种情况发生在@Valid 方法的参数时。


比如:


... function(@Valid User user_a,BindingResult bindingResult)

{

...

}

当Valid check错误时,就会报这个错误,其原因是:

如果不指定 user_a 在模型中的名称,Spring MVC 会在 bindingResult 中添加一个和类名一样的对象(首字母小写),这里是 user,而不是user_a

解决方案为:

在User user_a 前加上一个模型定义: @Valid @ModelAttribute("user_a") User user_a 

这样就告诉BindingResult功能,把错误Pojo对象的实例命名为 user_a,而不是 user。




Spring MVC Neither BindingResult nor plain target object for bean

标签:

原文地址:http://blog.csdn.net/tbwood/article/details/43530501

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!