Не удалось подключиться к TLS 1.2 с помощью HTTPclient 3.1

У меня есть работающий код, который я уже использую для подключения к серверу с использованием SSL. Я использую API commons-httpclient-3.1.jar, и я не могу не обновить банку. Серверы были обновлены, чтобы использовать только TSL 1.2. Теперь мой существующий код не работает. Мой текущий код

HttpClient httpClient = new HttpClient();
        PostMethod post = new PostMethod("https://XYZserver");
        post.getParams().setParameter("http.protocol.version", HttpVersion.HTTP_1_1);
        File f = new File("C://sampleXml.xml");
        RequestEntity entity = new FileRequestEntity(f, "Application/xml");
        post.setRequestEntity(entity);  
        int statusCode = httpClient.executeMethod(post);

Если я изменю свой код по ссылке Как заставить Commons HTTPClient 3.1 использовать TLS 1.2 только для HTTPS? тогда мой код работает нормально.

У меня есть несколько вопросов (поскольку я не смог найти на них ответы?)

  • Why do we require a separate class CustomHttpsSocketFactory. Is it possible to modify existing code to use TLS
    • Is there any other way to do?

person Nimble Fungus    schedule 16.09.2016    source источник