javax.net.ssl.SSLProtocolException: оповещение о рукопожатии: нераспознанное имя при подключении к URL-адресу https через groovy

Я пытаюсь получить доступ к URL-адресу https xml моего приложения, развернутого на jdk 1.7.0_25, через мой отличный код. Но Groovy бросает исключение для этой строки в Groovy Code -

 URL url = new URL("https://my.company.com//path/to/xml")
 URLConnection urlConnection = url.openConnection()
 def xml = new XmlSlurper().parse(url.toString())
 //Parse the XML here....and perform operations

исключение javax.net.ssl.SSLProtocolException: оповещение о рукопожатии: нераспознанное имя

В качестве обходного пути я попытался импортировать сертификат - my.company.com из иерархии сертификатов my.company.cer через браузер в мое локальное хранилище ключей, где я установил свою среду разработки. Ниже приведена команда -

1. keytool -importcert -alias "mycompany-ca" -file my.company.cer
2. keytool -import -file my_company.cer -keystore "C:\Program Files\Java\jdk1.6.0_30\jre\lib\security\cacerts" -trustcacerts -storepass "changeit"

И сертификат был успешно добавлен в локальное хранилище доверенных сертификатов - "jdk1.6.0_30\jre\lib\security\cacerts". Я был в состоянии получить доступ к XML через https URL через Groovy код тогда. Поэтому я попытался в дальнейшем импортировать тот же сертификат в хранилище ключей локальной среды сервера.

Но проблема в том, что этот обходной путь работает случайным образом. Иногда я могу успешно получить доступ к этому XML через URL-адрес https с сервера, а иногда я случайно получаю ту же ошибку без каких-либо изменений в сценарии.

Нужно ли импортировать корневой сертификат в локальное хранилище доверенных сертификатов моей серверной среды?

Как мне обработать это исключение SSL в моем самом groovy?

Извините, я совершенно новичок в этом. Любые указатели и помощь будут высоко ценится.

0 ответов

Другие вопросы по тегам