我在我的项目中使用spring 3.0.5RELEASE。现在我的要求是我想对表单进行验证。我是spring的新手,我不知道如何执行,我用谷歌搜索了它。然后我找到了使用休眠的解决方案- validator.jar 我们可以实现它。每当我将数据输入到表单中,数据保存在一个名为 SampleCommand 的实体类中,并且在这个类中我有 5 个字段。首先我试图在一个字段上应用验证。所以我给了作为
@NotNull(message = "The above field must not be blank.")
private Integer sourceId;
下面是控制器类代码
public ModelAndView processForm(@ModelAttribute("reports") @Valid ReportsCommand model, ModelAndView modelAndView,BindingResult result,
HttpServletRequest request, HttpServletResponse response) throws Exception {
if (result.hasErrors()) {
return new ModelAndView(new RedirectView("../pages/report/main.jsp"));
}
else{
....
}
以下是仅适用于该字段的 jsp 代码。
<form id="report-generate-form" method="post" action="../../reports/html" target="newWindow">
<div class="form-row" style="">
<div class="label"><%=Msg.get(MsgEnum.SOURCE_CONFIG_NAME_LABEL)%><em>*</em>
</div>
<div class="form-row">
<select name="sourceId" id="source-dropdown" class="input-field-select mandatory constrained"
<select name="sourceName" id="source-dropdown"
class="input-field-select mandatory constrained"
constraints='{"fieldLabel":"Source Name","mustSelect":"true"}'>
<option value="-1">Select</option>
</select>
</div>
<div class="error-container">
<div class="error-img"></div>
<label class="error"></label>
</div>
<form:errors path="sourceId" cssClass="error" />
</div>
</form>
如果我这样使用,应用程序正在运行,没有任何异常,但是当我填写表单时,我错过了 sourceId 字段并单击提交按钮。然后它不显示验证消息。我还需要做任何事情来显示消息。对不起我的英语不好。