我的jsp中有一个日期输入字段,如下所示:
<form:input name="inputDate" id="inputDate" value="" path="date"/>
此表单已映射到@ModelAttribute
account
,其日期定义如下:
private java.util.Date date ;
当我提交表单时,我得到一个错误(当然):
无法将java.lang.String类型的属性值转换为必需值 输入java.util.Date ...
请建议我在JSP本身中解析date
的方法,以便@ModelAttribute
可以直接设置date
字段的值
答案 0 :(得分:1)
在此示例中只需register binder in your @Controller
:
@Controller
public class MyFormController {
@InitBinder
public void initBinder(WebDataBinder binder) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
dateFormat.setLenient(false);
binder.registerCustomEditor(Date.class,
new CustomDateEditor(dateFormat, false));
}
// ...
}