hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Roland Weber" <ROLWE...@de.ibm.com>
Subject RE: SocketException : SSL Implementation not available
Date Fri, 25 Jul 2003 06:33:09 GMT
Hello,

from the JavaDocs of javax.net.ssl.SSLSocketFactory.getDefault():

If SSL has not been configured properly for this virtual machine,
the factory will be inoperative (reporting instantiation exceptions). 


In order to create SSL connections, the SSL implementation needs to
know the root certificates it is supposed to trust. This must be 
configured,
usually in properties files. Since you are switching manually to a Sun
JSSE within an IBM JDK, chances are that there is no configuration
of the key store, which is supposed to hold the root certificates.

You should verify steps 7 and 8 of the installation instructions:
http://java.sun.com/products/jsse/install.html


hope that helps,
  Roland







Ramanan nr <ramanannr@yahoo.com>
24.07.2003 22:32
Please respond to "Commons HttpClient Project"
 
        To:     Commons HttpClient Project 
<commons-httpclient-dev@jakarta.apache.org>, olegk@apache.org
        cc: 
        Subject:        RE: SocketException : SSL Implementation not 
available


Hi oleg,

My https call. Works fine with Sun JDK 1.4.1
I dont have the provision to move to IBM's Version

I am using commons-httpclient 2.0 beta, IBM JDK 1.3.1
(WSAD 4.0.3), Sun JSSE 1.0.3

I downloaded Sun JSSE 1.0.3 added the jar files from
that to WSAD JRE (to the ext directory)

changed the security file to add the following info:

security.provider.1=sun.security.provider.Sun
security.provider.2=com.sun.crypto.provider.SunJCE
security.provider.3=com.sun.net.ssl.internal.ssl.Provider
security.provider.4=com.sun.jsse.JSSEProvider
#security.provider.5=com.ibm.crypto.provider.IBMJCE
#security.provider.6=com.ibm.jsse.JSSEProvider

Also in my code I am doing the following :

System.setProperty("java.protocol.handler.pkgs","com.sun.net.ssl.internal.www.protocol");
Security.addProvider(new
com.sun.net.ssl.internal.ssl.Provider());
Security.insertProviderAt(new
com.sun.crypto.provider.SunJCE(),1); 



I am getting the following exception:

java.net.SocketException: SSL implementation not
available
                 at
javax.net.ssl.DefaultSSLSocketFactory.createSocket(Unknown
Source)
                 at
org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:127)
                 at
org.apache.commons.httpclient.HttpConnection.tunnelCreated(HttpConnection.java:749)
                 at
org.apache.commons.httpclient.ConnectMethod.execute(ConnectMethod.java:204)
                 at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:638)
                 at
org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:500)
<<stacktrace removed>>


Am I missing any thing that needs to be done?

thanks
NRR





Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message