【发布时间】:2016-11-11 21:48:30
【问题描述】:
每当我重新启动运行 MQTT 客户端的 WAR 项目时,我都会返回客户端收到的最后一条消息,因此会出现重复消息。这可能是什么原因造成的?客户代码?服务器配置?
客户端
操作系统:Debian GNU/Linux 8.2 (jessie); Java:java 版本“1.7.0_91”,OpenJDK Runtime Environment (IcedTea 2.6.3) (7u91-2.6.3-1~deb8u1),OpenJDK 64-Bit Server VM (build 24.91-b01,混合模式)
Apache Tomcat/8.0.14 (Debian)
来自 https://repo.eclipse.org/content/repositories/paho-releases/ Maven 存储库的 MQTT 库,使用以下依赖项:
<dependency>
<groupId>org.eclipse.paho</groupId>
<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
<version>1.0.1</version>
</dependency>
使用这个stub接收消息,实现org.eclipse.paho.client.mqttv3.MqttCallback:
@Override
public void messageArrived(String topic, MqttMessage msg) throws Exception {}
我看到还有另一种方法可以被覆盖,但我没有考虑:
@Override
public void deliveryComplete(IMqttDeliveryToken token) {
// TODO Auto-generated method stub
}
我还应该提供什么?
【问题讨论】:
标签: java tomcat client message-queue mqtt