Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring集成:从多个JMS目的地接收消息_Java_Spring_Spring Integration - Fatal编程技术网

Java Spring集成:从多个JMS目的地接收消息

Java Spring集成:从多个JMS目的地接收消息,java,spring,spring-integration,Java,Spring,Spring Integration,我正在使用JavaDSL来配置我的通道适配器。我想要实现的事情可以用以下代码描述: IntegrationFlows .from(Jms.messageDriverChannelAdapter(mqCacheConnectionFactory) .configureListenerContainer(container -> container.sessionTransacted(transacted))

我正在使用JavaDSL来配置我的通道适配器。我想要实现的事情可以用以下代码描述:

IntegrationFlows
                .from(Jms.messageDriverChannelAdapter(mqCacheConnectionFactory)
                        .configureListenerContainer(container -> container.sessionTransacted(transacted))
                        .destinations(inputDestination1, inputDestination2) // missing method
                        .autoStartup(autoStartup)
                        .id(channelName)
                        .errorChannel(errorChannel)
                )
                .channel(commonChannel)
                .get();
因此,我希望有
messageDriverChannelAdapter
,它能够从多个JMS目的地接收数据。这是可以实现的吗?

不,这是不可能的

Spring集成JMS支持完全基于Spring JMS基金会。而且它的

AbstractMessageListenerContainer
只提供一个
目的地的消费能力。因此,
Jms.messageDriverChannelAdapter()
不提供配置多个要侦听的目标的选项

您唯一的选择是配置几个
Jms.messageDriverChannelAdapter()
s。Spring集成的好处是,您可以将它们全部输出到相同的
MessageChannel
,这样就不会有太多的复制/粘贴操作