骆驼“成功交付致谢”

时间:2014-04-03 17:51:45

标签: java oracle jms apache-camel activemq

我一直试图想出一条可以从activemq读取并写入Oracle AQ的驼峰路由。

但是,当一条消息成功写入Oracle-aq时,我必须将一条成功的消息写入另一个Active mq队列(“id为41的消息已发送到OracleAQ”)

骆驼中是否有任何“自动确认”功能可以在这里使用?

这是我从主动mq到oracle aq。

的基本路线
<route>
    <from uri="jms:queue:Q.Customer1"/>
        <setHeader headerName="prop">
        <simple>header1Value</simple>
        </setHeader>
    <to uri="oracleQueue:queue:Q.Customer2"/>
</route>

1 个答案:

答案 0 :(得分:1)

只需添加另一个to指向您希望camel在写入oracle后发布到的队列,如下所示:

<onException>
    <exception>some.sql.Exception</exception>
    <to uri="some:error:handler:uri" /> <!-- like a bean or dead letter channel or whatever -->
</onException>
<route>
    <from uri="jms:queue:Q.Customer1"/>
    <setHeader headerName="prop">
        <simple>header1Value</simple>
    </setHeader>
    <to uri="oracleQueue:queue:Q.Customer2"/>
    <!-- this step will not be called until the previous one is finished  -->
    <to uri="jms:queue:SomeOtherQueue"/>
</route>