2012-12-06 90 views
1

我與Apache的駱駝試驗的第一次,我試圖創建一個使用例如獨立的應用程序在這裏找到:http://camel.apache.org/running-camel-standalone-and-have-it-keep-running.html運行駱駝獨立,並讓它繼續運行

這個例子是使用org.apache.camel.Main類管理應用程序的生命週期。這個例子工作正常,但我不明白的是如何在示例中創建Camel上下文以及如何獲取它以添加組件。我想這樣的添加一些東西,默認上下文:

ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("vm://localhost?broker.persistent=false"); 
context.addComponent("myJms", JmsComponent.jmsComponentAutoAcknowledge(connectionFactory)); 

回答

4

由於您使用的是org.apache.camel.main.Main類或彈簧版本只有一個定義的情況下,你可以只是做main.getCamelContexts().get(0).addComponent("myJms",JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));,因爲只有一個由主類擁有的上下文。當你執行main.run();時,一個名爲「camel-1」的上下文將由Main創建。

另一種方法是run方法之前綁定組件到註冊表: main.bind("myJms",JmsComponent.jmsComponentAutoAcknowledge(connectionFactory));

挑選:)

+0

謝謝!這工作很好。 – Stefan

+1

main.getCamelContexts()....... –

+0

Thx @AminSh現在可以更正答案。 –