2015-08-28 148 views
0

我試圖創建一個終端依賴傳入消息的路由。目的是在不同的數據庫和集合中寫入一個mongodb。阿帕奇駱駝動態設置mongodb集合

我正在尋找一種簡單的方式來獲得郵件標題中的信息,並在寫入<to uri=""/>

<route> <from uri="jms:topic:BUS_IN" /> <to uri="mongodb:myDb?database=${header.someValue}&amp;collection=storyTeaser&amp;operation=save" /> </route>

非常感謝

回答

1

你可以添加第二個路由設置標題變量:

<route> 
     <from uri="jms:topic:BUS_IN" /> 
     <camel:setHeader headerName="CamelMongoDbDatabase"> 
      <camel:simple>testmydb</camel:simple> 
     </camel:setHeader> 
     <camel:setHeader headerName="CamelMongoDbCollection"> 
      <camel:simple>mycollection</camel:simple> 
     </camel:setHeader> 
     <to uri="jms:queue:mongodb.out"/> 
    </route> 

然後在fir的uri中添加參數「dynamicity」 st route:

<route> 
     <from uri="jms:queue:mongodb.out" /> 
     <to uri="mongodb:myDb?database=new_test&amp;collection=old&amp;dynamicity=true&amp;operation=save"/> 
    </route>