У меня есть проблемы со следующим кодом ...javax.net.ssl.SSLException: SSLSocketFactory является нулевым
System.setProperty("javax.net.ssl.keyStoreType", "pkcs12");
System.setProperty("javax.net.ssl.trustStoreType", "jks");
System.setProperty("javax.net.ssl.keyStore","C:\\ClientKeyStore\\ClientKeyStore.p12");
System.setProperty("javax.net.ssl.trustStore","C:\\ClientKeyStore\\ClientKeyStore.keystore");
System.setProperty("javax.net.debug", "ssl");
System.setProperty("javax.net.ssl.keyStorePassword", "keystorepass");
System.setProperty("javax.net.ssl.trustStorePassword", "truststorepass");
SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
URL url = new URL("https://url.com");
HttpsURLConnection httpCon = (HttpsURLConnection) url.openConnection();
httpCon.setSSLSocketFactory(sslsocketfactory);
OutputStream out=httpCon.getOutputStream();
Я попытался установить доверие магазин, хранилище ключей и другие свойства контекста SSL с помощью System.setProperty(key,value)
метод, но я получаю следующую ошибку.
javax.net.ssl.SSLException: SSLSocketFactory is null. This can occur if javax.net.ssl.SSLSocketFactory.getDefault() is called to create a socket and javax.net.ssl.* properties are not set.
Не могли бы помочь мне с этой проблемой.
Какой код/настройки вы используете для этого? – Bruno
@Bruno: Проверьте код сейчас. Я редактировал сообщение. –
Вы ранее называли 'SSLSocketFactory.getDefault()' до того, как были установлены свойства? – EJP