Max*_*AMM 3 validation spring spring-mvc
我想验证我的输入,但我无法使其工作:页面上没有任何内容.我的项目是在java 5中,所以没有JSR303(@Valid).我唯一的解决方案是,如果我没弄错的话,就是使用BindingResult.
我的控制器:
@Controller
public class MyController {
@RequestMapping(method = RequestMethod.POST, value = "myPage.html")
public void myHandler(MyForm myForm, BindingResult result, Model model) {
result.reject("field1", "error message 1");
}
}
Run Code Online (Sandbox Code Playgroud)
我的jsp:
<form:form commandName="myForm" method="post">
<label>Field 1 : </label>
<form:input path="field1" />
<form:errors path="field1" />
<input type="submit" value="Post" />
</form:form>
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
谢谢 !
axt*_*avt 12
BindingResult.reject()与相关联的形式作为一个整体的错误信息,它可以通过显示<form:errors/>没有path.要将错误与特定表单字段关联,请使用BindingResult.rejectValue():
result.rejectValue("field1", "messageCode", "Default error message");
Run Code Online (Sandbox Code Playgroud)
使用Java 5的JSR-303也没有问题.您需要在类路径以及Java 6中使用JSR-303提供程序和API库.
| 归档时间: |
|
| 查看次数: |
19478 次 |
| 最近记录: |