編集:私はこれはので、私は3ワトソンを持ってhereワトソンとの問題とhttps
javax.netとSSLに関する別の質問を投稿ワトソンに関連しているとは思わない
サービス、TTS、STT、会話など、Java Spring Webアプリケーションに組み込まれており、Eclipse/localhostで3つのアプリケーションすべてをうまく動作させることができます。私は最近、Chromeのマイクにアクセスするために、プロダクションサーバーの設定(Apache/Tomcat)を安全なサイト(HTTPS/SSLとLetsEncrypt証明書)に更新しました。今私は、getVoices()TTSメソッドを実行するときに私はSSLExceptionを見ているアプリを展開するとき。私は、安全なサイトからのワトソンサービスにアクセスするSO関連して任意のドキュメントや質問を見つけることができませんが、私はそれがマイクにアクセスするアプリが安全でなければならないクローム要件与えられた可能だと考えるべき
javax.net.ssl.SSLException: Received fatal alert: bad_record_mac
。
この設定を行うために必要な設定、フラグなどの設定はありますか?
ここでは、ログの関連部分です:
Caused by: javax.net.ssl.SSLException: Received fatal alert: bad_record_mac
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208) ~[?:1.7.0_80]
at sun.security.ssl.Alerts.getSSLException(Alerts.java:154) ~[?:1.7.0_80]
at sun.security.ssl.SSLSocketImpl.recvAlert(SSLSocketImpl.java:1979) ~[?:1.7.0_80]
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1086) ~[?:1.7.0_80]
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1332) ~[?:1.7.0_80]
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1359) ~[?:1.7.0_80]
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1343) ~[?:1.7.0_80]
at okhttp3.internal.io.RealConnection.connectTls(RealConnection.java:239) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.io.RealConnection.establishProtocol(RealConnection.java:196) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.io.RealConnection.buildConnection(RealConnection.java:171) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.io.RealConnection.connect(RealConnection.java:111) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.http.StreamAllocation.findConnection(StreamAllocation.java:187) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:123) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.http.StreamAllocation.newStream(StreamAllocation.java:93) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.http.HttpEngine.connect(HttpEngine.java:296) ~[okhttp-3.3.1.jar:?]
at okhttp3.internal.http.HttpEngine.sendRequest(HttpEngine.java:248) ~[okhttp-3.3.1.jar:?]
at okhttp3.RealCall.getResponse(RealCall.java:243) ~[okhttp-3.3.1.jar:?]
at okhttp3.RealCall$ApplicationInterceptorChain.proceed(RealCall.java:201) ~[okhttp-3.3.1.jar:?]
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:163) ~[okhttp-3.3.1.jar:?]
at okhttp3.RealCall.execute(RealCall.java:57) ~[okhttp-3.3.1.jar:?]
at com.ibm.watson.developer_cloud.service.WatsonService$1.execute(WatsonService.java:179) ~[core-3.5.0.jar:?]
更新#1
念のためには、私は、戻ってHTTPへのApache/Tomcatの設定を反転し、両方を再起動すると例外がしました発生しません。だから私の推測では、おそらくOkhttp(Watson JDKで使用される)またはApache/Tomcatの設定問題のいずれかの問題でなければならないということです。または、ワトソンがLetsEncrypt証明書を認識しない可能性がありますか?
アップデート#2
私は例外を研究しようとしてきたと私はおそらくSSLプロトコルで、それは可能性のApache/Tomcatの設定の問題だと考えています。私はこれをApache httpd.confに追加しましたが、問題はまだあります。
SSLProtocol all -SSLv3
SSLProxyProtocol all -SSLv3
私は彼らの構成で私よりももっと身近な誰かがこれを解決する正しい方向に私を指している可能性があります期待してのApache Tomcatの&タグを追加しました。