Какую версию Java вы используете? Кроме того, как вы говорите, он использует SSLv2? По умолчанию Java 1.6 будет использовать TLSv1. Здесь есть одна загвоздка: если вы включите debug ssl, вы можете увидеть, что используется формат SSLv2Hello, но если вы внимательно посмотрите, «версия протокола» внутри слоя записи будет TLSv1 (1.e версия информации о версии в формате SSLv2). Анализ захвата пакета на уровне TCP с использованием wireshark должен это подтвердить. Если вы хотите инициировать в формате TLSv1, установите только https.protocols = TLSv1 (это может повлиять на все исходящие вызовы ssl) ИЛИ установите этот конкретный сокет, как описано выше. Обратите внимание, что даже если у вас список из пяти запятых (например, https.protocols = SSLv3, TLSv1), он будет начинаться с TLSv1.