转自:https://www.cnblogs.com/wenhulu/p/5555457.html

当使用Spring MVC @Valid对输入框进行验证的时候,可能会遇到以下的异常:

Neither BindingResult nor plain target object for bean name ‘mybean’ available as request attribute

先看下controller:

@RequestMapping(value="/{userId}/updateUser",method=RequestMethod.POST)
public String updateUser(@PathVariable int userId,@Valid SysUser user,BindingResult br)
{
if(br.hasErrors())
{
return "updateUser";
}
userServiceInter.update(user);
return "redirect:/user/users";
}

上面代码对user的输入进行验证,报以上错误,为了解决这个问题,我们需要在@Valid之后添加一个注解@ModelAttribute("user") SysUser user,然后在jsp页面的添加

<form modelAttribute="user"></form>,解决问题。

contriller:

@RequestMapping(value="/{userId}/updateUser",method=RequestMethod.POST)
public String updateUser(@PathVariable int userId,@Valid @ModelAttribute("user")SysUser user,BindingResult br)
{
if(br.hasErrors())
{
return "updateUser";
}
userServiceInter.update(user);
return "redirect:/user/users";
}

update.jsp:

  <sf:form method="post" modelAttribute="user">
<tr><td>userName:</td><td><sf:input path="userName"/><sf:errors path="userName"/></td></tr>
<tr><td>userPwd:</td><td><sf:input path="userPwd"/><sf:errors path="userPwd"/></td></tr>
<tr><td>email:</td><td><sf:input path="email"/><sf:errors path="email"/></td></tr>
<tr><td>userStatus:</td><td><sf:input path="userStatus"/><sf:errors path="userStatus"/></td></tr>
<tr><td>accountNonLocked:</td><td><sf:input path="accountNonLocked"/><sf:errors path="accountNonLocked"/></td></tr>
<tr><td></td><td><input type="submit" value="update" onclick="javascript:return window.confirm('Are you sure to update')"/></td></tr>
</sf:form>

另一补充一下:

org.springframework.validation.annotation是放在spring-context-4.0.0RELEASE.jar下。

转自:http://www.cnblogs.com/wenhulu/p/5555457.html

当使用Spring MVC @Valid对输入框进行验证的时候,可能会遇到以下的异常:Neither BindingResult nor plain target object for bean name ‘mybean’ available as request attribute的更多相关文章

  1. spring MVC做form提交Neither BindingResult nor plain target object for bean name 'command' available

    这两天在做spring3.0 MVC+hibernate3.2的练习中,做简单的form提交, 一直报java.lang.IllegalStateException: Neither BindingR ...

  2. spring mvc @Valid 数据验证

    //对书的单价校验不能是空,价格在20-100之间   @DecimalMax(value = "100", message = "价格不超过100元")   ...

  3. spring mvc +@Valid +@RequestBody 来做参数校验返回400,并且不显示具体message 如何解决

    参考文档: https://www.oschina.net/question/115867_2282711   谢谢原作者

  4. spring mvc:练习:表单验证(javaConfig配置和注解)

    使用Spring表单标签, 表单验证使用 JSR303 的验证注解,hibernate-validators,提供了使用MessageSource和访问静态资源(如CSS,JavaScript,图片) ...

  5. spring mvc controller中的参数验证机制(二)

    这里我们介绍以下自定义的校验器的简单的使用示例 一.包结构和主要文件 二.代码 1.自定义注解文件MyConstraint package com.knyel.validator; import ja ...

  6. spring mvc controller中的参数验证机制(一)

    一.验证用到的注解 @Valid 对传到后台的参数的验证 @BindingResult 配合@Valid使用,验证失败后的返回 二.示例 1.传统方式 @PostMapping public User ...

  7. spring mvc自定义注解--访问时验证

    作用:在访问controller的方法时,判断用户是否是登陆状态. step1:定义注解 import java.lang.annotation.ElementType; import java.la ...

  8. spring3 jsp页面使用<form:form modelAttribute="xxxx" action="xxxx">报错,附连接数据库的spring MVC annotation 案例

    在写一个使用spring3 的form标签的例子时,一直报错,错误信息为:java.lang.IllegalStateException: Neither BindingResult nor plai ...

  9. Spring MVC - 表单处理示例

    环境搭建 环境: Intellij IDEA Spring MVC 完整的项目文件结构如下所示: Student.java package com.ktao.controller; public cl ...

随机推荐

  1. Java 8 新特性终极指南

    1.前言 毫无疑问,Java 8的发布是自从Java5以来Java世界中最重大的事件,它在编译器.工具类和Java虚拟机等方面为Java语言带来的很多新特性.在本文中我们將一起关注下这些新变化,使用实 ...

  2. 关于改变安卓Button样式,这里有一个好方法。

    首先,在drawable下创建一个新的xml文件(例如我创建的为button.xml).然后在里面输入以下代码. <item> <shape> <gradient and ...

  3. vegas pro 15解决导入的视频和音频有噪声问题,亲测可行

    中文步骤: 按住Shift->点击选项->首选项,松开Shift 点击右上角"内部"选项卡,在最下面的搜索栏输入SO4 找到第二项Enable So4 Compound ...

  4. cmd 运行 svn 亲测!!!

    如果之前安装了svn客户端,但是一直提示svn停止工作的话就可以用cmd去操作svn更新和提交了:或者可以直接用别的代码IDE(包含svn插件的)去进行svn的操作. 接下来我说说windows如何用 ...

  5. Linux 之根目录介绍

    1. /bin binary二进制 存放系统许多可执行程序文件 执行的相关指令,例如ls pwd whoami,后台的支持文件目录 2. /sbin super binary超级的二进制 存放系统许多 ...

  6. 聚合函数与SQL排序

    聚合查询 通过SQL对数据进行某种操作或计算时需要使用函数(聚合函数,将多行汇为一行). 常用函数(5个): COUNT:计算表中的记录数(行数) SUM: 计算表中数值列中数据的合计值 AVG: 计 ...

  7. eslint 校验去除

    不允许对 function 的参数进行重新赋值 /* eslint no-param-reassign: ["error", { "props": false ...

  8. 51nod1046 A^B Mod C【快速幂】

    给出3个正整数A B C,求A^B Mod C. 例如,3 5 8,3^5 Mod 8 = 3. Input 3个正整数A B C,中间用空格分隔.(1 <= A,B,C <= 10^9) ...

  9. HDU2866 Special Prime

    题目网址:http://acm.hdu.edu.cn/showproblem.php?pid=2866 题意:在区间[2,L]内,有多少个素数p,满足方程有解. 分析: 原方程变为: n^(b-1) ...

  10. 多种方法爬取猫眼电影Top100排行榜,保存到csv文件,下载封面图

    参考链接: https://blog.csdn.net/BF02jgtRS00XKtCx/article/details/83663400 https://www.makcyun.top/web_sc ...