Я вызываю службу REST, используя HTTPS в приложении для Android. У меня уже есть рабочий код для этого, но теперь, когда я использую недавно установленный сервер, на котором размещена служба 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, который принимает любой сертификат.
При вызове службы REST из Android Navigator соединение успешно устанавливается и работает нормально.
Телефон Android работает под управлением последней версии Android 4.0.3 от HTC.
Служба REST — это размещенное мод _perl-приложение на Apache, настроенное с поддержкой SSL.
Просмотр исходного кода OpenSSL по адресуhttps://github.com/android/platform_external_openssl/blob/ics-mr0/ssl/s23_clnt.cне дает мне никаких подсказок, кроме проблемы низкого уровня.
Любое предложение о том, как отлаживать это дальше?