我有一个以下 spring 形式:我的jsp中的输入标签接受日期 .
<form:input type="text" id="fromDate" path="fromDate" />
我有一个相应的Java bean将用户输入的日期绑定到bean的fromDate属性 .
@NotNull
@Past
@DateTimeFormat(pattern = "MM/dd/yyyy")
private Date fromDate;
当用户以“MM / dd / yyyy”格式输入日期时,我没有得到任何异常,并且值正确地设置为bean变量 .
但是,当用户以不同的格式(例如:2012年12月23日)或无效日期(例如:060412009324092014)输入日期时,我收到以下异常 .
无法将类型为java.lang.String的属性值转换为属性fromDate所需的类型java.util.Date;嵌套异常是org.springframework.core.convert.ConversionFailedException:无法从类型java.lang.String转换为类型@javax.validation.constraints.NotNull @ javax.validation.constraints.Past @ org.springframework.format.annotation . DateTimeFormat java.util.Date for value 060412009324092014;嵌套异常是java.lang.IllegalArgumentException:无法解析060412009324092014
请帮助在页面上显示有效消息而不是例外 .
谢谢迈克
1 回答
我能够通过拥有以下属性来解决问题 .
typeMismatch.bean.fromDate =从日期开始无效!
谢谢马克 .