Hi,
I have a simple client(s) - server RMI based Java application, and from time to time, I got a strange exception on the client side,
The RMI server is still serving another clients while this exception is thrown on another one!
the exception says :
error during JRMP connection establishment , huh ! why does RMI trying to establish a new connection each time the program wants to do an RMI call, the connection should be established once the RMI object has been lookedup, No ?
Here is the full exception stack trace :
java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is:
java.net.SocketTimeoutException: Read timed out
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:286)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:110)
at com.d1g.internet.assignments.AssignmentsManager_Stub.validateDuplicatedDocuments(Unknown Source)
at com.d1g.testCases.AssignmentsFeeder$ValidateDuplicationsTask.run(AssignmentsFeeder.java:138)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at java.io.DataInputStream.readByte(DataInputStream.java:248)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:228)
... 6 more
Edited by: phiras on Jul 30, 2008 2:53 AM