Не получает ответ сервера при передаче как bean - PullRequest
0 голосов
/ 29 мая 2020

У меня есть контроллер, в котором я передаю прямую аннотацию Bean и @valid для проверки. Я создал специальную аннотацию и добавил ее к каждому полю в компоненте. Он проверяет, но не отправляет сообщения от пользовательского обработчика исключений. Затем, если я не передаю bean-компонент и не передаю параметр запроса для каждого поля, он дает правильный ответ от пользовательского обработчика исключений.

Добавление скриншотов. enter image description here

Вы можете видеть, что /group дает ответ проверки, когда передается как @RequestParam, а /check не дает ответное сообщение просто дает код запроса 400.

Я добавил ответное сообщение в пользовательский обработчик исключений enter image description here

Вы можете увидеть сообщение, переданное в исключении нарушения ограничений. Я создал специальную аннотацию, которая только проверяет специальные символы. Работает для RequestParam.

enter image description here

Ответы [ 2 ]

0 голосов
/ 29 мая 2020

Итак, здесь я решил проблему с удалением аннотации @Valid и добавил этот код

Set<ConstraintViolation<ProcessDefination>> violations = validator.validate(processDefination);
            if (!violations.isEmpty()) {
              throw new ConstraintViolationException(violations);
            }
0 голосов
/ 29 мая 2020

Если в ответе 400, возможно, проблема не в аннотации @Valid, просто Group интерпретируется как неверный параметр. Попробуйте удалить эту аннотацию, 400 по-прежнему отображается?

Я не понимаю, что вы создаете GET только с аннотацией @Valid, возможно, попробуйте добавить к ней также @RequestParam. Что именно представляет собой компонент Group в контексте этой конечной точки?

[EDIT: добавлено в качестве ответа из-за низкого уровня репутации]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...