AndroidアプリケーションでHTTPSを使用してRESTサービスを呼び出しています。私はすでにこのための作業コードを持っていますが、RESTサービスをホストする新しくインストールされたサーバーを使用しているため、接続を確立できなくなりました。
例外は次のとおりです。
javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x15b7768: Failure in SSL library, usually a protocol error
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol (external/openssl/ssl/s23_clnt.c:683 0x402e5cc3:0x00000000)
アプリケーションはApacheクラスを使用してRESTサービスと対話します。あらゆる種類の証明書を受け入れるダミーのTrustManagerを使用している場合でも、このエラーが発生します。
Android NavigatorからRESTサービスを呼び出すと、接続が正常に確立され、正常に機能します。
Androidスマートフォンは、HTCの最新の4.0.3Androidを実行しています。
RESTサービスは、SSLサポートで構成されたApacheでホストされるmod_perlアプリケーションです。
https://github.com/android/platform_external_openssl/blob/ics-mr0/ssl/s23_clnt.cでOpenSSLソースコードを参照しても、低レベルの問題以外のヒントは得られません。
これをさらにデバッグする方法の提案はありますか?