Spring MVC-无效日期的Joda datetime错误消息
我的datetime
请求对象中有一个joda 属性,并且已用于 @DateTimeFormat
日期格式化。
但是,当我输入无效的日期(例如,日期为55)时,它将显示整个消息
我如何将其更改为自定义消息,因为当前消息是由Spring生成的。
但是由于我没有做任何error.rejectValue
事情,所以我无法理解它将如何从属性文件中选择消息,因此如何识别消息。
回答:
您在问题中链接的方法应该有效。但是您应该使用的消息密钥例如typeMismatch.org.joda.time.DateTime
。
即使您没有在任何地方手动拒绝该值,Spring也会根据JavaDoc中描述的规则自动知道在哪里寻找消息
DefaultMessageCodesResolver
。
在您描述的情况下,Spring将专门查找以下代码:
typeMismatch.request.myDate
-在名为“ request”的对象上的名为“ myDate”的属性的转换消息typeMismatch.myDate
-名为myDate的属性的转换消息typeMismatch.org.joda.time.DateTime
-DateTime类型的转换消息typeMismatch
-常规转换错误消息
因此,您可以定义一些常规typeMismatch
消息,例如“ 不正确的格式”
,然后根据需要定义更具体的消息。更具体的错误代码比其下方的优先级更高。因此,如果您同时定义了typeMismatch
和typeMismatch.org.joda.time.DateTime
消息,则将使用后者。
以上是 Spring MVC-无效日期的Joda datetime错误消息 的全部内容, 来源链接: utcz.com/qa/403515.html