【问题标题】:Creating subscriptions on Azure ServiceBus with QPID JMS (AMQP 1.0)使用 QPID JMS (AMQP 1.0) 在 Azure ServiceBus 上创建订阅
【发布时间】:2013-07-25 06:56:59
【问题描述】:

servicebus 客户端 2.1 现在支持AMQP 1.0

在 MSDN 上有一个 article 介绍如何将 QPID.AMQP.JMS 与 Azure ServiceBus 一起使用。

但是,尽管我可以连接到预定义的主题和订阅、发布消息并接收所有消息,但我无法更改消息选择器或创建新的主题/订阅。

我的目标是能够连接到一个主题并使用 org.apache.qpid.amqp_1_0.jms 基于不同的过滤器动态创建订阅。

问题:

1/ 如何创建新主题。

Topic newTopic = (Topic) session.createTopic("newtopic");
session.createProducer(newTopic); // returns error
  • 这可能是因为 JMS 不支持主题管理...虽然我确定我在某处读过它应该创建一个主题,如果它不存在。?

2/ 如何通过 Jms 创建具有不同消息选择器的新订阅?

// This still gives me all messages no matter what I put in the 'class' property.
TopicSubscriber subscriber = session.createDurableSubscriber(topic, "sub1", "class = 'boo'", false);

谢谢, 菲尔。

【问题讨论】:

标签: azure jms amqp servicebus


【解决方案1】:

AMQP 1.0 协议故意将实体创建/管理置于其范围之外,您需要为此使用提供商特定的机制预先创建主题和订阅(This post 对此有很好的解释)。

对于服务总线,您可以使用Azure SDK、门户(如果您不需要以编程方式进行)或他们的REST API

希望对你有帮助!

【讨论】:

  • 希望通过发送 AMQP 消息而不是其他方式来执行提供者特定的队列创建和管理机制。
猜你喜欢
  • 2018-01-02
  • 2018-01-16
  • 2018-10-08
  • 2022-06-10
  • 1970-01-01
  • 2018-02-12
  • 2019-08-15
  • 2015-04-04
  • 2019-08-19
相关资源
最近更新 更多