Azure 服务总线 AMQP URL 不接受/或如何将 Liberty 连接到 Azure 服务总线

Azure Servicebus AMQP URL not accepted / or how to connect Liberty to Azure Service Bus

我在通过 QPID 通过 AMQP 将 Azure ServiceBus 连接到 IBM WAS LibertyProfile 时遇到问题。 我遵循了 Microsoft Docs Service Bus Messaging 上的教程,但我遇到了以下异常(URL 被混淆了):

Caused by: Not an AMQP URL amqps://POLICY:ENCODEDKEY@NAMESPACE.servicebus.windows.net
at org.apache.qpid.url.URLHelper.parseError(URLHelper.java:143)
at org.apache.qpid.url.URLHelper.parseError(URLHelper.java:138)
at org.apache.qpid.client.url.URLParser.parseURL(URLParser.java:150)
at org.apache.qpid.client.url.URLParser.<init>(URLParser.java:41)
at org.apache.qpid.client.AMQConnectionURL.<init>(AMQConnectionURL.java:62)
at org.apache.qpid.client.AMQConnectionFactory.<init>(AMQConnectionFactory.java:83)
at org.apache.qpid.ra.QpidResourceAdapter.createFactory(QpidResourceAdapter.java:747)
at org.apache.qpid.ra.QpidResourceAdapter.createAMQConnectionFactory(QpidResourceAdapter.java:656)

在server.xml中我使用了qpid-ra-6.1。2.rar作为资源适配器。

如果我在 jndi.properties 中使用具有相同 URL 的小型示例应用程序,连接工作完美。

两种方案的区别在于我使用的是资源适配器。我使用它有错吗? 如何通过 AMQP 从 WAS Liberty 连接到 Azure 服务总线会更好?

我期待着得到一些答案或提示。

答案是我使用的 JCA 适配器无法连接到 AMQP 1.0 代理。在示例应用程序中,我使用 qpid amqp 1.0 客户端 jms。 目前没有 amqp 1.0 JCA 资源适配器。 资源适配器也没有进一步的工作: Qpid Jira Ticket 7716