繁体   English   中英

将ActiveMQ服务与Web服务集成(Mule ESB)

[英]Integration ActiveMQ service with web service (Mule ESB)

我只想将Web服务数据发送到ActiveMQ。 问题是未创建队列,并且消息未发送到该队列。 这是我的代码:

    <jms:activemq-connector name="Active_MQ" brokerURL="tcp://localhost:61616" validateConnections="true" doc:name="Active MQ"/>
    <spring:beans>
        <spring:bean id="objectStore" class="org.mule.util.store.SimpleMemoryObjectStore"/>
    </spring:beans>

    <flow name="test_mq_externalwebserviceFlow1" doc:name="test_mq_externalwebserviceFlow1">
        <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8083" doc:name="HTTP"/>
        <cxf:jaxws-service serviceClass="com.org.RequestHandlerService" doc:name="SOAP"/> 
        <until-successful objectStore-ref="objectStore" maxRetries="5" secondsBetweenRetries="10" doc:name="Until Successful" deadLetterQueue-ref="retryFlow">
            <component class="com.org.ReverseName" doc:name="JavaMain_ServiceImpl"/> 
        </until-successful>
        <logger level="INFO" doc:name="Logger"/>
        <echo-component doc:name="Echo"/>
        <jms:outbound-endpoint connector-ref="Active_MQ" doc:name="JMS" queue="errorQueue"/>
        <catch-exception-strategy doc:name="Catch Exception Strategy">
            <jms:outbound-endpoint connector-ref="Active_MQ" doc:name="JMS" queue="errorQueue"/>
        </catch-exception-strategy>
    </flow> 

在JMS出站终结点之前使用Object to XML Transformer,并在Java组件后删除Jms终结点...如下所示:-

<jms:activemq-connector name="Active_MQ" brokerURL="tcp://localhost:61616" validateConnections="true" doc:name="Active MQ"/><spring:beans>
<spring:bean id="objectStore" class="org.mule.util.store.SimpleMemoryObjectStore"/</spring:beans><flow name="test_mq_externalwebserviceFlow1" doc:name="test_mq_externalwebserviceFlow1">
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8083" doc:name="HTTP"/>
<cxf:jaxws-service serviceClass="com.org.RequestHandlerService" doc:name="SOAP"/> 
<until-successful objectStore-ref="objectStore" maxRetries="5" secondsBetweenRetries="10" doc:name="Until Successful" deadLetterQueue-ref="retryFlow">
<component class="com.org.ReverseName" doc:name="JavaMain_ServiceImpl"/> 
</until-successful>
<logger level="INFO" doc:name="Logger"/>

<catch-exception-strategy doc:name="Catch Exception Strategy">
  <mulexml:object-to-xml-transformer doc:name="Object to XML"/>
<jms:outbound-endpoint connector-ref="Active_MQ" doc:name="JMS" queue="errorQueue"/>
</catch-exception-strategy>

现在,只要出现异常,请求就会发送到ActiveMQ

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM