我正在尝试在 Spring MVC 框架下编写验证器,但文档中有一个明显的遗漏。当调用将错误传递给Errors对象时,大多数方法都需要一个名为 errorCode 的字符串参数。如果我理解正确,这些错误代码可以作为特定错误消息的替代品。但我无法终生弄清楚这些代码映射到哪里。
这是我从 Spring MVC 的 Javadoc 中引用的示例;
public class UserLoginValidator implements Validator {
private static final int MINIMUM_PASSWORD_LENGTH = 6;
public boolean supports(Class clazz) {
return UserLogin.class.isAssignableFrom(clazz);
}
public void validate(Object target, Errors errors) {
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "userName", "field.required");
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password", "field.required");
UserLogin login = (UserLogin) target;
if (login.getPassword() != null
&& login.getPassword().trim().length() < MINIMUM_PASSWORD_LENGTH) {
errors.rejectValue("password", "field.min.length",
new Object[]{Integer.valueOf(MINIMUM_PASSWORD_LENGTH)},
"The password must be at least [" + MINIMUM_PASSWORD_LENGTH + "] characters in length.");
}
}
}
任何人都可以启发我吗?