Eclipse paho java驱动程序不支持tls连接

时间:2015-05-16 21:31:43

标签: java mqtt paho

尝试使用eclipse paho(1.0.2)java库使用tls:// ...形式的url连接到MQTT代理会抛出IllegalArgumentException。不足为奇,它在代码中特别不允许(尽管ssl可用)。连接在MqttConnectOptions

中调用此方法
protected static int validateURI(String srvURI) {
        try {
            URI vURI = new URI(srvURI);
            if (!vURI.getPath().equals("")) {
                throw new IllegalArgumentException(srvURI);
            }
            if (vURI.getScheme().equals("tcp")) {
                return URI_TYPE_TCP;
            }
            else if (vURI.getScheme().equals("ssl")) {
                return URI_TYPE_SSL;
            }
            else if (vURI.getScheme().equals("local")) {
                return URI_TYPE_LOCAL;
            }
            else {
                throw new IllegalArgumentException(srvURI);
            }
        } catch (URISyntaxException ex) {
            throw new IllegalArgumentException(srvURI);
        }
    }

这种限制有什么办法吗?或者,有什么理由阻止它吗?人们如何将这个客户端与这些网址一起使用?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我刚刚使用相同的Eclipse Paho(1.0.2)库遇到了同样的问题,并在将代理URI更改为"ssl://....."后使其运行(在某种程度上)。至少我能够初始化SSL握手。