Java Spring3 MVC:验证不起作用
性别验证不起作用。即使在性别文本字段中未输入任何值,表单也会成功验证,不会引发任何错误 以下是员工类别:Java Spring3 MVC:验证不起作用,java,spring,validation,spring-mvc,Java,Spring,Validation,Spring Mvc,性别验证不起作用。即使在性别文本字段中未输入任何值,表单也会成功验证,不会引发任何错误 以下是员工类别: @Size(min=2,max=10) private String gender; // Setters and Getters 以下是控制器方法: @RequestMapping(value="done", method = RequestMethod.POST) public String validateForm(@Valid Employee employee, Binding
@Size(min=2,max=10)
private String gender;
// Setters and Getters
以下是控制器方法:
@RequestMapping(value="done", method = RequestMethod.POST)
public String validateForm(@Valid Employee employee, BindingResult result, ModelMap m){
if(result.hasErrors()){
System.out.println("Validation Failed!!!");
return "main";
}else{
System.out.println("Validation Succeeded!!!");
return "done";
}
}
以下是上下文文件:
<context:annotation-config />
<context:component-scan
base-package="com.XXX" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/pages/" />
<property name="suffix" value=".jsp" />
</bean>
下面是jsp文件:
<tr>
<td>
Gender:
</td>
<td>
<form:input path="gender"/>
<form:errors path="gender" cssStyle="color: red;"/>
</td>
</tr>
性别:
我无法找出遗漏了什么,但这有点愚蠢。请提供帮助。1)所有javax约束在其传递条件中都包含隐式的“或null”。如果您想要捕获空白,您需要添加@NotNull
,或者重新配置web绑定器,将空白输入绑定到空字符串而不是null
2)
未启用Spring3 DispatcherServlet自动配置魔法。如果这样做,您需要定义自己的验证器bean。要使一切自动工作,您需要使用
1)所有javax约束在其传递条件中都包含一个隐式的“或null”。如果您想要捕获空白,您需要添加@NotNull
,或者重新配置web绑定器,将空白输入绑定到空字符串而不是null
2)
未启用Spring3 DispatcherServlet自动配置魔法。如果这样做,您需要定义自己的验证器bean。要使一切自动工作,您需要使用
1)所有javax约束在其传递条件中都包含一个隐式的“或null”。如果您想要捕获空白,您需要添加@NotNull
,或者重新配置web绑定器,将空白输入绑定到空字符串而不是null
2)
未启用Spring3 DispatcherServlet自动配置魔法。如果这样做,您需要定义自己的验证器bean。要使一切自动工作,您需要使用
1)所有javax约束在其传递条件中都包含一个隐式的“或null”。如果您想要捕获空白,您需要添加@NotNull
,或者重新配置web绑定器,将空白输入绑定到空字符串而不是null
2)
未启用Spring3 DispatcherServlet自动配置魔法。如果这样做,您需要定义自己的验证器bean。要使一切自动工作,您需要使用
HibernateEvalidator在您的类路径上吗?您是否从javax.validation包导入了@Size?validation-api.jar和hibernate-validator.jar这两个验证器都存在于我的类路径中。是的,包是:import javax.validation.constraints.Size代码>HibernateEvalidator是否在类路径上?您是否从javax.validation包导入了@Size?validation-api.jar和hibernate-validator.jar这两个验证器都存在于我的类路径中。是的,包是:import javax.validation.constraints.Size代码>HibernateEvalidator是否在类路径上?您是否从javax.validation包导入了@Size?validation-api.jar和hibernate-validator.jar这两个验证器都存在于我的类路径中。是的,包是:import javax.validation.constraints.Size代码>HibernateEvalidator是否在类路径上?您是否从javax.validation包导入了@Size?validation-api.jar和hibernate-validator.jar这两个验证器都存在于我的类路径中。是的,包是:import javax.validation.constraints.Size
我将@Size
更改为@NotNull
,但验证仍然不起作用。请给出建议。在这两个注释都不起作用之前,您需要:@Size(min=2,max=10)@NotNull私有字符串性别代码>验证是否适用于长度为1或11的字符串,而不适用于空格,或者什么都不起作用?什么都不起作用。首先,尝试不使用任何字符,第二:尝试使用单个字符。我将@Size
更改为@NotNull
,但验证仍然不起作用。请给出建议。在这两个注释都不起作用之前,您需要:@Size(min=2,max=10)@NotNull私有字符串性别代码>验证是否适用于长度为1或11的字符串,而不适用于空格,或者什么都不起作用?什么都不起作用。首先,尝试不使用任何字符,第二:尝试使用单个字符。我将@Size
更改为@NotNull
,但验证仍然不起作用。请给出建议。在这两个注释都不起作用之前,您需要:@Size(min=2,max=10)@NotNull私有字符串性别代码>验证是否适用于长度为1或11的字符串,而不适用于空格,或者什么都不起作用?什么都不起作用。首先,尝试不使用任何字符,第二:尝试使用单个字符。我将@Size
更改为@NotNull
,但验证仍然不起作用。请给出建议。在这两个注释都不起作用之前,您需要:@Size(min=2,max=10)@NotNull私有字符串性别代码>验证是否适用于长度为1或11的字符串,而不适用于空格,或者什么都不起作用?什么都不起作用。第一,尝试不使用任何字符,第二:尝试使用单个字符。