1
我的駱駝路徑如下問題使用Apache的駱駝
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring" >
<route>
<from uri="bean:SendClass?method=send" />
<to uri="jms:MyQueue" pattern="InOnly" />
</route>
<route>
<from uri="jms:MyQueue" />
<to uri="bean:recvClass?method=recv" />
</route>
</camelContext>
send方法給出了兩個bean之間的路由與發送消息,我認爲這個問題是駱駝當recv bean接收到消息並重新發送相同的消息(一秒鐘內有幾百個消息)時,重新啓動 路由。理想情況下,我希望它在發送方法被激活並且創建新消息時發送消息 (即JMS隊列應該有唯一的消息)。我該怎麼做?
可能的解決方案之中:
- 是他們的一些屬性,我可以把
<from.../>
內做到這一點? - 編寫處理器來過濾發送Bean和隊列之間的唯一消息。
- 是他們的路由,而無需使用
<from uri="bean:..." />
感謝 sanre6
我認爲我可以一次使用Spring XMl或Java DSl。所以,如果我使用像template.sendBody(「activemq:MyQueue」,「世界!」); ....那麼它意味着我必須使用Java DSl的Producertemplate嗎?我如何用Spring XML來做到這一點。感謝您的回答 – sanre6 2010-10-03 11:30:02
在send()方法的Java代碼中。這是您向Camel發送消息的地方,因爲它在send()方法被調用時發生。 – 2010-10-03 15:05:06
參見例如:http://camel.apache.org/pojo-producing.html – 2010-10-03 15:07:14