Spring MVC验证程序:错误条件未激活

时间:2019-09-03 08:04:16

标签: spring spring-mvc spring-validator

在遵循正式的Udemy教程的同时,我尝试了一些Spring MVC验证代码,但是验证条件并未激活。如果我输入了错误的值,我总是会看到确认页面。我怎么解决这个问题?非常感谢。

如果我将第一个字段保留为空白,则应该激活了一个错误并且该错误没有出现。其他情况都可以正常工作,只有代码永远不会达到错误条件。

根据飞机模型:

@NotNull(message="is required!")
@Size(min=10, message="is required!")
private String airMan;

来自验证器:

@RequestMapping("/formProcess")
    public String openResult(
            @ModelAttribute("aircraft") @Validated Aircraft aircraft, 
            BindingResult Result) {

        System.out.println(" er: " + Result.getFieldError());

        if (Result.hasErrors()) {
            System.out.println("error");
            return "index";
        }
        else {
            System.out.println("ok");
            return "result";

        }
    }

通过网络表单:

<form:form  action="formProcess" modelAttribute="aircraft">

    <form:input path="AirMan"/>
    <form:errors path="AirMan" cssClass="error"></form:errors>
    <form:input path="airModel"/>
    <form:input path="airPower"/>
    <input type="submit" value="ok">
</form:form>

1 个答案:

答案 0 :(得分:0)

答案是:

 <mvc:annotation-driven/> 

在spring-config.xml中;在我复制粘贴的原始教程的代码中,这不是这部分。而且,在头部:

xmlns:mvc="http://www.springframework.org/schema/mvc"

在添加这些内容之前,没有错误,没有消息,什么也没有。仅验证器未激活。谢谢大家的答复;问题已解决。