Spring 使用JSR303进行入站http消息验证

Spring 使用JSR303进行入站http消息验证,spring,spring-integration,spring-integration-http,Spring,Spring Integration,Spring Integration Http,我使用Spring集成来接收http消息,然后将其放入通道中并进行一些转换 我阅读了文档(),它看起来像: @Bean public HttpRequestHandlingMessagingGateway inbound() { HttpRequestHandlingMessagingGateway gateway = new HttpRequestHandlingMessagingGateway(true); gateway.setRequestMapping(

我使用Spring集成来接收http消息,然后将其放入通道中并进行一些转换

我阅读了文档(),它看起来像:

@Bean
public HttpRequestHandlingMessagingGateway inbound() {
    HttpRequestHandlingMessagingGateway gateway =
        new HttpRequestHandlingMessagingGateway(true);
    gateway.setRequestMapping(mapping());
    gateway.setRequestPayloadType(SomeBean.class);
    gateway.setRequestChannelName("httpRequest");
    return gateway;
}
我想使用JSR303BeanValidation()验证有效负载,可以吗?最好的方法是什么


提前谢谢

有一个关于验证的专门段落:。因此,您只需要使用该网关的
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框架:

我读过了!但这是一个Spring验证器,而不是JSR303验证器。看起来您没有做得太多:。请参阅
localvalidatoryfactorybean
及其JavaDocs:`*这是Spring中{@code javax.validation}(JSR-303)设置的中心类`。不知道你为什么认为我们谈论不同的方法。。。Spring只提供了自己的抽象,其中一个实现实际上是针对JSR-303的