Error: Failed to convert property value of type java.lang.String to required type java.util.Date for property dob?

Error: Failed to convert property value of type java.lang.String to required type java.util.Date for property dob?

我正在尝试使用简单的 Spring-MVC 应用程序进行表单验证。我在从浏览器输入日期时遇到问题。错误是:

"Failed to convert property value of type java.lang.String to required type java.util.Date for property dob; 
nested exception is java.lang.IllegalArgumentException: Could not parse date: Unparseable date: "2015-12-25"

这个问题我只在 Google Chrome 浏览器中遇到。在 Internet Explorer 和 Eclipse 界面中,它工作正常。我正在使用 Chrome-40.0.2214.115m.

我在这里分享我的部分代码:

来自控制器文件:

...
@InitBinder     
public void initBinder(WebDataBinder binder){
     SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
     binder.registerCustomEditor(Date.class,new CustomDateEditor(dateFormat, false));   
}
...

来自 JSP 文件:

...
<tr>
<td><label for="dob">DOB</label></td>
<td><input type="date" name="dob" /></td>
<td><form:errors path="person1.dob" /></td>
</tr>
...

如果浏览器兼容性有问题,那么解决方法是什么?请帮我解决这个问题。

输入标签日期格式始终如 YYYY-MM-DD。因此,使用 yyyy-MM-dd.

格式化为 SimpleDateFormat 时更改格式模式

所以试试这个

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");