首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring mqtt:捕获ConnectException

spring mqtt:捕获ConnectException
EN

Stack Overflow用户
提问于 2016-03-18 00:31:07
回答 1查看 366关注 0票数 1

我有一个关于春天的问题。

我使用Spring-Paho MqttPahoMessageDrivenChannelAdapter与MQTT broker建立连接。下面是一个java配置部分:

代码语言:javascript
复制
@Bean
@Description("mqtt inbound adapter: receives mqtt messages")
public MessageProducer mqttInboundAdapter() {
    log.info("creating mqtt inbound adapter");
    MqttPahoMessageDrivenChannelAdapter adapter =
            new MqttPahoMessageDrivenChannelAdapter(
                    env.getProperty("mqtt.hostname")+":" +env.getProperty("mqtt.port"), 
                    "myClient",
                    "#");
    adapter.setCompletionTimeout(5000);
    adapter.setConverter(new DefaultPahoMessageConverter());
    adapter.setQos(1);
    adapter.setOutputChannel(mqttInputChannel());
    adapter.setErrorChannel(mqttErrorChannel());
    return adapter;
}

当代理关闭且连接未建立时,将抛出ConnectException。这很棒,但我不仅想在日志中看到它的踪迹,还想收到一封警告电子邮件。

我希望它可以在mqttErrorChannel的帮助下实现,但ConnectException is not the case的错误通道的使用。是否有办法将ConnectException捕获到另一个通道或以另一种方式?

提前谢谢你。

EN

回答 1

Stack Overflow用户

发布于 2016-03-18 01:03:34

从Spring Integration 4.2.2开始,当我们失去连接或无法在订阅上连接时,就会发出MqttConnectionFailedEvent

例如,您可以使用ApplicationEventListeningMessageProducer捕获该ApplicationEvent并将其发送到适当的通道。

请参阅《参考手册:http://docs.spring.io/spring-integration/reference/html/mqtt.html》中的详细信息

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36066471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档