solace VMR で新しいメッセージ VPN を作成し、その SSL ポートを 8884 として構成しました。パブリッシュとサブスクライブの両方を許可するように構成されたデフォルトの ACL プロファイル。しかし、「hellotopic」などのトピックでメッセージを公開しようとすると、次のような例外が発生します。
Exception occoured Client is currently disconnecting (32102)
Connection lost on instance "123456" with cause "Connection lost" Reason code 32109" Cause "java.io.EOFException"
Connection lost (32109) - java.io.EOFException
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:138)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.EOFException
at java.io.DataInputStream.readByte(DataInputStream.java:267)
at org.eclipse.paho.client.mqttv3.internal.wire.MqttInputStream.readMqttWireMessage(MqttInputStream.java:56)
at org.eclipse.paho.client.mqttv3.internal.CommsReceiver.run(CommsReceiver.java:100)
... 1 more
VMRイベントログを慰めている間、接続を取得して即座に切断します: -
2016-09-13T13:12:16+0000 <local3.info> solace event: CLIENT: CLIENT_CLIENT_CONNECT_MQTT: publisher_VPN #mqtt/1251123gf/216 Client (108) #mqtt/1251123gf/216 username default ClientId (1251123gf) connected to XXX.XX.XX.XX:8884 from XXX.XX.XX.XX:59736 SslVersion(TLSv1.2) SslCipher(ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256) authScheme(Basic) Clean(0) Will(0)
2016-09-13T13:12:16+0000 <local3.info> solace event: CLIENT: CLIENT_CLIENT_DISCONNECT_MQTT: publisher_VPN #mqtt/1251123gf/216 Client (108) #mqtt/1251123gf/216 username default ClientId (1251123gf) **reason(Service Unavailable)** final statistics - dp(1, 1, 0, 0, 1, 1, 25, 4, 0, 0, 25, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) conn(0, 0, XXX.XX.XX.XX:59654, ESTAB, 0, 0, 0) mqtt(1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0, 0, 0, 0), SslVersion(TLSv1.2), SslCipher(ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(128) Mac=SHA256), WillSent(0).
この解決策を見つけようとしましたが、次のトピックで公開する権限がないことに関する情報を入手しました。
PS - デフォルトの VPN SSL ポートでメッセージを発行できます。