0
我有JSR-303的bean验证工作,但我永远无法获得要显示的默认消息。JSR-303从不显示默认消息
我已经创建了一个自定义的验证,DateRangeValidator
,即检查两个日期,以确保从日期为到日期之前。它工作正常。
我的注释是这样的:
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = DateRangeValidator.class)
public @interface ValidDateRange {
String message() default "{ValidDateRange.message}";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
在messages.properties
我有以下几点:
ValidDateRange.message=From date must be before to date.
但每当验证失败,所有我在网页上看到的是:
{ValidDateRange.message}
我在这里错过了什么?我的默认消息在哪里?
我可以要显示的信息的唯一方法是添加以下为messages.properties
(不包括大括号):
ValidDateRange.{myFormName}.{myRangeField}=blah blah blah
为什么从不显示默认的消息?我不想为每个使用此验证的字段指定一条消息。
当您将某些内容放入src/main/resources中时,它将最终位于您档案的根目录。这是默认包。 – Franck