Spring集成HTTP入站验证

时间:2018-03-13 15:38:16

标签: spring-integration spring-integration-dsl

我在Spring Integration 5.0.3中使用SpringBoot 2.0,并且我的HTTP.inboundGateway存在问题。我的目标是验证发布到网关的JSON,因为请求pojo由必填字段组成。

 @Bean
 public IntegrationFlow notifyUpdateVehicleFlow() {
 return IntegrationFlows.from(Http.inboundGateway("/update")
        .requestMapping(r -> r.methods(HttpMethod.POST))
        .requestPayloadType(RequestPojo.class)
        .requestChannel(updateChannel())
        .replyChannel(updateReplyChannel()))
        .get();
 }

是否有一种简单的方法可以验证pojo中的字段?我已经测试过的是使用@NotNull SpringValidation,但Spring Integration似乎不支持它。

问候, smoothny

1 个答案:

答案 0 :(得分:1)

Spring Integration中没有这样的功能。您可以使用.filter()下游的Http.inboundGateway(),并在有效负载上真正执行Validator.validate()

如果您认为必须以某种方式在Http.inboundGateway()上完成并且您有强烈的要求和清晰的描述,请随意提出有关此问题的JIRA,我们将讨论从框架角度可以做些什么。< / p>