如何声明两个出站通道适配器以发布不同的消息

时间:2017-07-26 08:14:25

标签: java spring rabbitmq spring-integration spring-integration-amqp

我声明了int:chain with single input and output channel,

<int:chain input-channel="InputChannel" output-channel="Channel">

      <int:transformer method = "transform" >
        <bean class="com.sampleconverter" />
      </int:transformer>
        <int:service-activator method="transform">
             <bean class="com.Transformer" />
        </int:service-activator>
     <int:object-to-string-transformer />
   </int:chain>

如何声明多个输出通道,每个输出通道具有不同的转换方法(不同的消息)

提前致谢

1 个答案:

答案 0 :(得分:0)

Spring Integration中只有一个组件具有多输出 - router

因此,您可以在chain的末尾对其进行配置,并让它根据提供的条件决定发送消息的频道。

例如:

<payload-type-router>
    <mapping type="java.lang.String" channel="strings"/>
    <mapping type="java.lang.Number" channel="numbers"/>
</payload-type-router>

Reference ManualSamples中的更多信息。