在我的Smpring MVC应用程序中,我正在使用SimpleDateFormat作为WebDataBinder中的自定义编辑器来验证日期.当输入的日期与所需的模式不匹配时,我会在以下表单中收到原始错误消息:errors标签,例如:
Failed to convert property value of type java.lang.String to required type java.util.Date for property hireDate; nested exception is java.lang.IllegalArgumentException: Could not parse date: Unparseable date: "432345"
我的问题是我想在jsp页面上显示类似以下内容的自定义错误消息:
“出生日期必须匹配“ dd / MM / yyyy”模式
这是我的@InitBinder的代码:
@InitBinder
protected void initBinder(WebDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));
}
谢谢.
解决方法:
尝试在消息捆绑包中注册以下消息:
typeMismatch.command.field=Date of birth must match "dd/MM/yyyy" pattern
or
typeMismatch.field = ...
用适当的命令对象替换命令和字段