Java Сообщение Hibernate Validator, указанное в аннотации, не переданной в ConstraintViolation - PullRequest
0 голосов
/ 29 марта 2020

Я использую аннотации Hibernate Validator. Валидатор корректно возвращает свойство как недействительное, но не отображает сообщение, указанное в аннотации. Используя Java 8, org.hibernate.validator v. 6.1.2.Final.

@NotEmpty(message = "'Param 'user' must be provided")
String user = params.get("user");


Validator validator = Validation.buildDefaultValidatorFactory().getValidator();

List<Set<ConstraintViolation<String> > > validationResults = new ArrayList<Set<ConstraintViolation<String> > >();

validationResults.add(validator.validate(user));

for(Set<ConstraintViolation<String> > set : validationResults)
         if(set.isEmpty() == false)
         {
            String combinedMessages = new String();

            for(ConstraintViolation<String> i : set)
                combinedMessages = combinedMessages + i.getMessage() + "; ";

                throw new Exception(combinedMessages);
            }

Я ожидаю, что комбинированные сообщения будут:

Необходимо указать параметр 'user'

Однако вместо этого выводится следующее:

HV000001: Hibernate Validator 6.1.2.Final

HV000116: проверяемый объект не должен быть null.

Пожалуйста, помогите мне понять, почему я не получаю ожидаемый результат. Спасибо.

...