【问题标题】:Spring Integration Async Gateway Response HandlingSpring集成异步网关响应处理
【发布时间】:2015-05-14 13:06:37
【问题描述】:

我需要一些提示如何解决 Spring Integration 的问题。

我有一个网关接口。

public interface OrderGateway {
   Future<Response> process(Request value);
} 

我通过网关发送请求消息。 ValidationService 应该检查数据是否正确。如果是,它应该将消息转发给 OrderService。 OderService 将生成响应。 但如果请求数据不正确,ValidationService 应该生成一个响应对象,将其返回给网关。在这种情况下,不应调用 OrderService。 ValidationService 是什么样的消息端点?它会咬路由器吗?我想通过抛出异常来避免处理这个问题。如何使用 Spring Integration 解决这种情况?

   +--------------------------------+
   v                                |                         
Async Gateway --> CH --> ValidationService --> CH --> OrderService +
   ^                                                               |
   |---------------------------------------------------------------|                                                                 

提前致谢。

【问题讨论】:

    标签: response spring-integration gateway


    【解决方案1】:

    正常的处理方式是抛出异常并在网关上添加error-channel;在那里处理错误并从那里返回验证响应。

    如果这不合适,是的,有效负载类型的路由器可以工作,验证结果被发送到“无处的桥”(只有输入通道的桥),框架会将其路由回网关.

    【讨论】:

    • 抛出异常对我有用。非常感谢。唯一的小事是异常被“o.s.integration.handler.LoggingHandler”写入系统输出日志,如何删除系统输出?配置自定义日志记录处理程序的正确方法是什么?
    • 否;只需使用您自己的“错误通道”而不是默认的errorChannel
    猜你喜欢
    • 2014-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-08
    • 2020-04-05
    • 2019-05-28
    • 1970-01-01
    • 2012-03-07
    相关资源
    最近更新 更多