В Spring не работает проверка для остальных запросов - PullRequest
0 голосов
/ 07 сентября 2018

Привет, я пытался проверить данные запроса на отдых через "JSR-303" и код следующий -:

* уровень аннотаций pojo

@NotNull(message="Carrier ID cannot be null")
    private String carrier;

* Класс MessageStatusDoc

@Id
private String transactionId;

private String status;

private Key key;

private AccountDetail accountDetail;

* вызывающий метод

saveMessage(@Valid @RequestBody MessageStatusDoc messageStatusDoc)

Ключ Класс содержит поле несущей

Кто-нибудь может подсказать, почему я не могу уловить ошибку ..?

PS значение выводится на консоль как ноль, когда я пытаюсь его зарегистрировать.

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Это будет решено, если вы используете аннотации на уровне получателя, а не на уровне объявления полей.

0 голосов
/ 07 сентября 2018

Вот пример.

Я предполагаю, что ниже класса ваш MessageStatusDoc.

Поля перевозчика - это ваша потребность для подтверждения.

public class MessageStatusDoc {

        @Id
        private String transactionId;

        private String status;

        private Key key;

        @NotNull(message="Carrier ID cannot be null")
        private String carrier;

        //getter setter
}

Вот метод, который использует MessageStatusDoc в качестве параметра

public void saveMessage(@Valid @RequestBody MessageStatusDoc messageStatusDoc) {
   //nothing to do for now
}

Если вы делаете это хорошо, как в данном примере, то, если какой-либо метод вызывает метод saveMessage, но поле носителя параметра messageStatusDoc имеет значение null, тогда проверка выдаст исключение.

И конец. У меня вопрос. Можете ли вы дать весь код?

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