簡體   English   中英

如何使用Apache camel / Spring-boot訂閱持久主題?

[英]How to subscribe to a Durable TOPIC using Apache camel / Spring-boot?

每當我啟動我的訂戶時,它就不會出現在我的activeMQ的“活動持久主題訂戶”部分下。 這意味着它還不是持久主題訂閱者。 我如何使其成為持久訂閱者?

JmsComponent jmsComponent = JmsComponent
        .jmsComponentTransacted(connectionFactory, jmsTransactionManager);
// TODO
jmsComponent.setClientId(subscriptionClientId);
jmsComponent.setDurableSubscriptionName(subscriptionName);
jmsComponent.setSubscriptionDurable(true); // This is enabled by default
//jmsComponent.setMaxConcurrentConsumers(maxConcurrentConsumers);
jmsComponent.setAcknowledgementMode(Session.AUTO_ACKNOWLEDGE);

return jmsComponent;

PS:它對於非持久性訂戶很好用。 我添加了以下代碼,以使其持久。 我想念什么嗎? 我是否需要添加其他內容?

jmsComponent.setClientId(subscriptionClientId);
jmsComponent.setDurableSubscriptionName(subscriptionName);
jmsComponent.setSubscriptionDurable(true); // This is enabled by default

我通過將訂閱詳細信息作為查詢字符串參數傳遞如下來使其工作:

myapp.jms.topic.inbound1 = JMS:主題:?myFirstTopic的clientId = ABC&durableSubscriptionName = ABC

myapp.jms.topic.inbound2 = JMS:主題:?mysecondTopic的clientId = XYZ&durableSubscriptionName = XYZ

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM