I hava a computer trying to make a SSL diiop connection to a domino server. The file TruestedCerts.class and NCSO.jar are in the path /IBM/AppServer/classes/. And the following is diiop config dump.
tell diiop show config
Dump of Domino IIOP (DIIOP) Configuration Settings
Full Server Name: CN=NAMDOMINOSERVER
Common Server Name: NAMDOMINOSERVER
Refresh Interval: 3 minutes
Host Full Name: namdominoserver
Host Short Name: namdominoserver
Host Address: 123.124.123.10
Public Host Name/Address: namdominoserver
TCP Port: 0 Disabled
SSL Port: 63149 Enabled
Initial Net Timeout: 120 seconds
Session Timeout: 60 minutes
Client Session Timeout: 62 minutes
IOR File: e:\Domino\Data\domino\html\diiop_ior.txt
SSL Key File: e:\Domino\Data\namdominoserver.kyr
Java Key File: e:\Domino\Data\domino\java\TrustedCerts.class
Allow Ambiguous Names: True
Web Name Authentic: False
User Lookup View: ($Users)
Allow Database Browsing: False
TCP Name/Password Allowed: True
TCP Anonymous Allowed: True
SSL Name/Password Allowed: True
SSL Anonymous Allowed: False
Multi-Server Session Authentication: Disabled
Internet Sites: Disabled
Single Server Cookies: Enabled
Check Cookie Client Address: False
Cookie Timeout: 10 minutes
And I got this exception.
Caused by: org.omg.CORBA.COMM_FAILURE: java.net.SocketException: Connection reset: Connection closed: Host: xxx.xxx.xxx.xxx Port: 63149 vmcid: 0x0 minor code: 1 completed: Maybe
at lotus.priv.CORBA.iiop.IIOPConnection.purge_calls(Unknown Source)
at lotus.priv.CORBA.iiop.ReaderThread.run(Unknown Source)
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java(Compiled Code))
at lotus.priv.CORBA.iiop.Message.readFully(Unknown Source)
at lotus.priv.CORBA.iiop.Message.createFromStream(Unknown Source)
at lotus.priv.CORBA.iiop.IIOPInputStream.prefill(Unknown Source)
at lotus.priv.CORBA.iiop.IIOPConnection.createInputStream(Unknown Source)
... 1 more
NotesException: Session closed due to communications failure
I searched around IBM website and found that the exception is realted to the file TrustedCerts.class. And then I saw this article: http://www-1.ibm.com/support/docview.wss?uid=swg21246028. Just curious, I followed the instruction and put the file TrustedCerts.class into a jar and move the jar file into the path <java_home>/jre/lib/ext/. Wow, it fixed my problem also.
Now, I am getting confused. I don’t understand why the file TruestedCerts.class can not be found in the path /AppServer/classes/? What’s the difference made when I put TrustedCerts.class into the jar and move into <java_home>/jre/lib/ext/? Please help and thank you in advance.