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