java - 使用 Java 中的 amqp 连接 Windows 服务总线时套接字关闭

标签 java amqp windows-server servicebus

我正在尝试使用 Java example 连接到 Windows 服务器的服务总线Microsoft 网站上提供了该信息。

以下是我用于此 POC 的库

     <dependency>
        <groupId>org.apache.qpid</groupId>
        <artifactId>qpid-jms-client</artifactId>
        <version>0.26.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.qpid</groupId>
        <artifactId>qpid-amqp-1-0-client-jms</artifactId>
        <version>0.32</version>
    </dependency>

下面是我正在使用的连接字符串格式

  return "amqps://" + SbSharedKey + ":" + SbSharedSecret + "@" + SbDomain + "/" + SbNamespace;

我的代码与网站上的代码完全相同,但给出了以下错误

Initial setup Creating context Creating connection factory Creating connection

Creating session Exception creating session/producer

java.net.SocketException: Socket Closed at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) javax.jms.JMSException: class java.net.SocketException: Connection closed by remote hostclass java.net.SocketException: Connection closed by remote host at java.net.SocketInputStream.read(SocketInputStream.java:170) at java.net.SocketInputStream.read(SocketInputStream.java:141) at sun.security.ssl.InputRecord.readFully(InputRecord.java:465) at

Process finished with exit code 0

我尝试做 SSLPoke它正在取得成功,

所以问题似乎只存在于 AMQP 方面。

您能否指出在使用 Java 中的 amqp 连接到 Windows 服务器服务总线时要使用的正确版本的库?

最佳答案

您在项目中使用了两个不同的 AMQP JMS 客户端库依赖项,因此我不知道到底发生了什么,但我的第一个猜测是您最终会使用旧的“qpid-amqp-1-0-client-” jms 的客户端不受支持,并且肯定无法工作。我会删除它并尝试仅使用 Qpid JMS 0.26.0 客户端库来完成任务,尽管我相信您可能还需要一些其他 URI 选项,因为 azure 有一些特定的连接要求。

关于java - 使用 Java 中的 amqp 连接 Windows 服务总线时套接字关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46722322/

相关文章:

java - 从 Android 手机上传文件到 FTP 服务器?

php - 在 Windows 上设置组策略 - 来自 PHP 的事件目录

.net - Windows 服务器版本上的 gcServer 默认为 true 吗?

adobe-indesign - 连接到 Adob​​e InDesign 控制台

c++ - AMQP-CPP RabbitMQ 基于异步事件的消费者不消费任何东西

php - 通过 PECL 安装 AMQP

java - 文件 HashMap <K, V>

java:关闭客户端套接字重置服务器套接字

java - 如何确定字符串表示中的基元类型?

ruby - amqp 中突然出现 PossibleAuthenticationFailureError