Проверка входящего http-сообщения с помощью JSR303 - PullRequest
0 голосов
/ 10 марта 2020

Я использую Spring Integration для получения сообщения http, а затем помещаю его в канал и выполняю некоторые преобразования.

Я прочитал документацию (https://docs.spring.io/spring-integration/reference/html/http.html), и она будет выглядит так:

@Bean
public HttpRequestHandlingMessagingGateway inbound() {
    HttpRequestHandlingMessagingGateway gateway =
        new HttpRequestHandlingMessagingGateway(true);
    gateway.setRequestMapping(mapping());
    gateway.setRequestPayloadType(SomeBean.class);
    gateway.setRequestChannelName("httpRequest");
    return gateway;
}

Я хочу проверить полезную нагрузку с помощью проверки bean-компонента JSR 303 (https://beanvalidation.org/1.0/spec/), возможно ли это? Какой самый лучший способ?

Заранее спасибо!

1 Ответ

0 голосов
/ 11 марта 2020

Существует специальный параграф о валидации: https://docs.spring.io/spring-integration/reference/html/http.html#http -validation . Итак, вам просто нужно использовать setValidator() этого шлюза:

/**

 * Specify a {@link Validator} to validate a converted payload from request.

 * @param validator the {@link Validator} to use.

 * @since 5.2

 */

public void setValidator(Validator validator) {

    this.validator = validator;

}

API валидации поставляется из Spring Framework: https://docs.spring.io/spring/docs/5.2.4.RELEASE/spring-framework-reference/core.html#validation

...