【发布时间】:2021-08-30 00:46:54
【问题描述】:
我正在尝试通过 MQTT 发布者发布事件。在提供者 URL 中提到了 tls://URL:Port
当我尝试执行时,它会出现以下错误:。我正在使用 apache jmeter 5.0 和 MQTT jar 版本:mqtt-jmeter-0.0.1-SNAPSHOT
java.lang.IllegalArgumentException: tls://...:1887 在 org.eclipse.paho.client.mqttv3.MqttConnectOptions.validateURI(MqttConnectOptions.java:470) [org.eclipse.paho.client.mqttv3-1.0.2.jar:?] 在 org.eclipse.paho.client.mqttv3.MqttAsyncClient.(MqttAsyncClient.java:273) [org.eclipse.paho.client.mqttv3-1.0.2.jar:?] 在 org.eclipse.paho.client.mqttv3.MqttAsyncClient.(MqttAsyncClient.java:167) ~[org.eclipse.paho.client.mqttv3-1.0.2.jar:?] 在 org.eclipse.paho.client.mqttv3.MqttClient.(MqttClient.java:224) ~[org.eclipse.paho.client.mqttv3-1.0.2.jar:?] 在 org.apache.jmeter.protocol.mqtt.paho.clients.BlockingClient.(BlockingClient.java:81) ~[mqtt-jmeter-0.0.1-SNAPSHOT.jar:?] 在 org.apache.jmeter.protocol.mqtt.sampler.PublisherSampler.initClient(PublisherSampler.java:247) ~[mqtt-jmeter-0.0.1-SNAPSHOT.jar:?] 在 org.apache.jmeter.protocol.mqtt.sampler.PublisherSampler.sample(PublisherSampler.java:271) ~[mqtt-jmeter-0.0.1-SNAPSHOT.jar:?] 在 org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:622) ~[ApacheJMeter_core.jar:5.0 r1840935] 在 org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:546) ~[ApacheJMeter_core.jar:5.0 r1840935] 在 org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:486) [ApacheJMeter_core.jar:5.0 r1840935] 在 org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:253) [ApacheJMeter_core.jar:5.0 r1840935] 在 java.lang.Thread.run(Thread.java:832) [?:?]
【问题讨论】:
-
ssl:// 代替 tls:// 有效吗?
-
当我用 ssl 替换 tls 时,出现以下错误:org.eclipse.paho.client.mqttv3.internal.ExceptionHelper.createMqttException(ExceptionHelper.java:38) ~[org.eclipse.paho.client .mqttv3-1.0.2.jar:?] 在 org.eclipse.paho.client.mqttv3.internal.ClientComms$ConnectBG.run(ClientComms.java:604) ~[org.eclipse.paho.client.mqttv3-1.0. 2.jar:?] at java.lang.Thread.run(Thread.java:832) [?:?] 原因:javax.net.ssl.SSLHandshakeException:PKIX 路径构建失败:sun.security.provider.certpath。 SunCertPathBuilderException: 无法找到请求目标的有效证书路径