骆驼和弹簧整合

时间:2015-10-28 10:39:39

标签: apache-camel spring-integration

我想测试来自apache camel站点的camel spring集成示例 http://camel.apache.org/springintegration.html但我得到例外 org.apache.camel.RuntimeCamelException:org.springframework.integration.MessageDeliveryException:Dispatcher没有用于频道输出通道的订阅者。

我的简短代码如下:

<channel id="inChannel"/>
<channel id="outputChannel"/>

<beans:bean id="greeting" class="com.javarticles.spring.integration.Greeting"/>

<service-activator input-channel="inChannel" ref="greeting"   method="sayHello" output-channel="outputChannel"/>

<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
    <route>
        <from uri="activemq:activemqsource"/>
        <to uri="log:input"/>
        <to uri="spring-integration:inChannel? inputChannel=outputChannel"/>
        <to uri="log:output"/>
    </route>


我试图搜索相关的问题,但我没有得到骆驼可以任何人告诉我如何订阅outputchannel

1 个答案:

答案 0 :(得分:0)

根据您提到的Camel文档,配置应该是这样的:

 <to uri="spring-integration:inputChannel?inOut=true&amp;inputChannel=outputChannel"/>

您的问题是inOut=true

  

Spring集成端点应该使用的交换模式。如果inOut = true,则可以从Spring Integration Message标头或在端点上配置回复通道。