Java SSLException: имя хоста в сертификате не совпало с

Я использовал следующий код для подключения к одному из сервисов Google. Этот код отлично работал на моей локальной машине :

HttpClient client=new DefaultHttpClient();
HttpPost post = new HttpPost("https://www.google.com/accounts/ClientLogin");
post.setEntity(new UrlEncodedFormEntity(myData));
HttpResponse response = client.execute(post);

Я поместил этот код в производственную среду, которая заблокировала Google.com. По запросу они разрешили связь с сервером Google, позволив мне получить доступ к IP : 74.125.236.52 - который является одним из IP-адресов Google. Я отредактировал свой файл hosts, чтобы добавить и эту запись.

До сих пор я не мог получить доступ к URL, и мне интересно, почему. Поэтому я заменил приведенный выше код на :

HttpPost post = new HttpPost("https://74.125.236.52/accounts/ClientLogin");

Теперь я получаю ошибку вида :

javax.net.ssl.SSLException: имя хоста в сертификате не совпало: <74.125.236.52> !=

Наверное, это потому, что у Google несколько IP-адресов. Я не могу попросить сетевого администратора разрешить мне доступ ко всем этим IP - возможно, я даже не получу весь этот список.

Что мне теперь делать? Существует ли обходной путь на уровне Java? Или это полностью в руках сетевого администратора?

39
задан Mike Tunnicliffe 5 June 2013 в 09:07
поделиться