【问题标题】:Spring Integration: Obtaining logs and handling callbacks from the default MQTT Paho clientSpring 集成:从默认 MQTT Paho 客户端获取日志并处理回调
【发布时间】:2014-07-14 16:11:15
【问题描述】:

下面是一个有趣的例子,它使用标准的出站通道适配器(不是 MQTT 出站适配器)通过 MQTT 发送消息: https://github.com/joshlong/spring-integration-mqtt

作者实现了自己的消息处理程序,并将其传递给适配器。

现在我的问题是:是否可以使用 MQTT 出站适配器实现自定义消息处理程序?还是只有使用 Spring Integration 的通用 outbound-channel-adapter 才能实现?

我的目标是从 Paho 客户端获取日志并处理回调,因此我可以处理连接错误、超时等...

【问题讨论】:

    标签: spring spring-integration mqtt


    【解决方案1】:

    Spring Integration 4.0 为 MQTT 模块提供了 MqttPahoMessageHandler 作为 AbstractMqttMessageHandler 的默认实现。

    我想说您可以从 MqttPahoMessageHandler 扩展来实现您的 MqttCallback 愿望,但是是的,您只能从 <int:outbound-channel-adapter ref=""> 使用该自定义 MessageHandler 实现。

    开箱即用的 <int-mqtt:outbound-channel-adapter> 仅用于填充 MqttPahoMessageHandler 的 bean,您无法更改该行为。

    另一方面,当您开始从 JavaConfig 进行 Spring 集成时,您将只处理类,因此没有限制您使用自定义标签的界限:

    @ServiceActivator(inputChannel = "sendToMqttChannel")
    @Bean
    public MessageHandler mqttHandler() {
       return new MyMqttPahoMessageHandler();
    }
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-31
    • 2018-03-17
    • 2016-10-27
    • 2018-10-18
    • 1970-01-01
    相关资源
    最近更新 更多