我正在使用JPA和Bean验证的项目中工作。我想向用户显示有关失败验证的友好消息,并且需要根据用户的区域设置以不同的语言显示这些消息。
我正在使用@NotNull
,@Size
之类的标准注释以及一些自定义类级别的验证。
在使用实体之前,我使用以下代码验证实体:
Validator validator = validation.buildDefaultValidatorFactory().getValidator();
Set<ConstraintViolation<Company>> constraintViolations = validator.validate(company);
if (constraintViolations.size() > 0) {
Set<String> violationMessages = new HashSet<String>();
for (ConstraintViolation<Company> constraintViolation : constraintViolations) {
violationMessages.add(constraintViolation.getPropertyPath() + ": " + constraintViolation.getMessage());
}
}
如果验证失败,我会看到验证失败的消息和字段,但是我不知道如何将这些验证消息转换为友好的消息以及不同的语言(基于用户的Locale
)
我有以下问题:
谢谢