我正在使用MQTT Paho MqttCallback
我成功地能够在没有任何问题的情况下订阅和发布我的主题,但我的任务是将数据存储在messageArrived(String topic, MqttMessage message)
的数据库中以便数据我将来可以使用它。
@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
// code to store the message in database
LOGGER.info("messageArrived>> " + message);
}
messageArrived()
没有执行存储到数据库的代码,它只是执行LOGGER。
将消息存储在数据库中的代码是正确的,然后它也会跳过代码。
我需要采用什么策略,因此首先它会将消息存储在数据库中并打印日志。
更新
我正尝试类似于this
的内容答案 0 :(得分:0)
这是因为你的记录器/数据库代码抛出了一个被paho框架吞噬的异常。
在记录器调用周围添加一个try / catch块。
@Override
public void messageArrived(String topic, MqttMessage message) throws Exception {
try {
// code to store the message in database
LOGGER.info("messageArrived>> " + message);
} catch (Exception ex) {
System.err.println(ex);
}
}
现在它应该打印失败的原因