创建ActiveMQ MQTT代理以连接到Moquitto代理

时间:2016-08-29 03:57:20

标签: jboss activemq mqtt

我想使用ActiveMQ创建一个代理来连接另一个Mosquitto代理。 然后,我可以使用ActiveMQ从Mosquitto代理接收消息。

我现在所做的是:

  1. 将ActiveMQ与JBoss EAP 6.3集成。
  2. 在ActiveMQ中创建MQTT代理:http://activemq.apache.org/mqtt.html
  3. 但是在broker-config.xml中添加NetworkConnector之后:

    <transportConnectors>
      <transportConnector name="openwire" uri="tcp://localhost:61616"/>
      <transportConnector name="mqtt" uri="mqtt://localhost:1883"/>
    </transportConnectors>
    
    <networkConnectors>
       <networkConnector uri="static:(tcp://mosquitto_server_ip:1883)"/>
    </networkConnectors>
    

    服务器在启动后显示异常:

      

    “vm:// localhost#8和。之间的网络连接   tcp:/// mosquitto_server_ip:1883 @ 42688由于远程错误而关闭:   java.util.concurrent.TimeoutException“

    我也尝试使用“mqtt:// ...”进行连接,但它仍然失败了:

      

    java.lang.IllegalArgumentException:无效的连接参数:   {wireFormat.host = 0.0.0.0}

    有谁知道如何使用JBoss ActiveMQ连接mosquitto代理?

1 个答案:

答案 0 :(得分:0)

不支持此功能,ActiveMQ网络连接器仅在使用本机OpenWire协议的ActiveMQ代理之间工作,不支持MQTT。您需要使用像Camel或其他一些桥接机制来支持ActiveMQ和Mosquito之间的跨代理通信