2017-08-11 59 views
0

在我的申請,我正在使用Apache的駱駝通配符和我已經定義路線建設者這樣叫:分辯哪個隊列在Apache的駱駝使用通配符時

從(「ActiveMQ的:隊列:* processQueue」) .bean(beanOne 「的someMethod」);

雖然發送消息我會發短信給 「{} UNIQUEID .processQueue」 隊列,所以我需要得到UNIQUEID的someMethodbeanOne

回答

2

完整隊列路徑位於In消息的JMSDestination標頭(例如JMS目標爲queue://test1.processQueue)中。您可以使用字符串操作函數來獲取所需的uniqueId

實施例(uniqueIdtest1):

@Handler 
public void someMethod(@Header("JMSDestination") String jmsDestination) { 
    String uniqueId = jmsDestination.substring("queue://".length(), jmsDestination.indexOf(".processQueue")); 
}