Java 检查spring mvc注册表中的两个密码条目是否相同?
当我尝试提交注册表以使用jsp检查Spring MVC应用程序中的匹配密码条目时,收到以下错误消息:Java 检查spring mvc注册表中的两个密码条目是否相同?,java,spring,jsp,spring-mvc,spring-validator,Java,Spring,Jsp,Spring Mvc,Spring Validator,当我尝试提交注册表以使用jsp检查Spring MVC应用程序中的匹配密码条目时,收到以下错误消息: org.springframework.context.NoSuchMessageException: No message found under code 'Passwords must match.' for locale 'en_US'. 注册表有一个密码字段和一个密码测试字段,以确保用户没有输入错误。换句话说,要求用户两次输入其请求的新密码,以便服务器可以在将新用户的密码保存到数据
org.springframework.context.NoSuchMessageException:
No message found under code 'Passwords must match.' for locale 'en_US'.
注册表有一个密码
字段和一个密码测试
字段,以确保用户没有输入错误。换句话说,要求用户两次输入其请求的新密码,以便服务器可以在将新用户的密码保存到数据库中之前确认两次尝试是否匹配
我如何更改下面的代码,以便Spring执行服务器端验证以确认用户的两次密码尝试是相同的,并在不相同时向视图发送有用的警报消息?
这两个字段的jsp代码是:
<tr>
<td>
<spring:bind path="password">
<table>
<tr>
<td>${pwdtest}
<label class="col-sm-2 control-label">Password</label>
<form:errors path="password" class="form-error" />
</td>
</tr>
<tr>
<td>
<form:input path="password" type="password" id="password" name="password" />
</td>
</tr>
</table>
</spring:bind>
</td>
<td>
<spring:bind path="passwordtest">
<table>
<tr>
<td>${pwdtest}
<label class="col-sm-2 control-label">Repeat Password</label>
</td>
</tr>
<tr>
<td>
<form:input path="passwordtest" type="password" id="passwordtest" name="passwordtest" />
</td>
</tr>
</table>
</spring:bind>
</td>
</tr>
堆栈跟踪指向的jsp中的代码行是:
<form:errors path="password" class="form-error" />
但是,请注意,当用户将密码字段留空时,这行代码确实成功地打印了一个错误。因此,我认为问题在于需要添加其他内容。您的错误是全局错误,而不是字段错误。如果填写了但不匹配,您如何知道哪个字段是错误的?:) 使用
错误。拒绝(“,”密码必须匹配“)代码>
在JSP中,添加全局错误区域:
<spring:hasBindErrors name="nameOfYourModelAttribute">
<c:if test="${errors.globalErrorCount > 0}">
<div class="alert alert-danger"><form:errors/></div>
</c:if>
</spring:hasBindErrors>
<spring:hasBindErrors name="nameOfYourModelAttribute">
<c:if test="${errors.globalErrorCount > 0}">
<div class="alert alert-danger"><form:errors/></div>
</c:if>
</spring:hasBindErrors>