我编写了一个mqtt java代码(paho),当它尝试连接到Mosquitto代理时工作正常。它能够建立,发布主题的所有消息。但是使用MQXR(MQ附带的代理),我得到了
严重:无法连接到MQTT代理,请求可能会丢失。 连接丢失(32109) - java.io.EOFException 在org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:138) 在java.lang.Thread.run(Thread.java:736) 引起:java.io.EOFException at java.io.DataInputStream.readByte(DataInputStream.java:250) 在org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:56) 在org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:100) ......还有1个
QoS设置为2.无法在MQXR中找到失败的原因?任何想法都非常感谢。
由于
答案 0 :(得分:0)
失去联系有两种可能性:
1.一些MQTT Brokers不支持Azure IoT-Hub等QOS-2实现。验证您的经纪人是否支持QOS-2
你在哪个港口连接?如果其SSL / TLS已加密,则无法使用未加密的连接进程进行连接。您必须在连接过程中使用bouncycastle启用SSL connection。