summaryrefslogtreecommitdiff
path: root/java/ssl/jdk1.4/IceSSL/TransceiverI.java
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2006-06-21 17:41:57 +0000
committerMark Spruiell <mes@zeroc.com>2006-06-21 17:41:57 +0000
commitbda1b8ab95ba98e3de69070951eaf8849482960c (patch)
tree0e185e5c01a3b828cbf20dc42511a8a18e39cfcc /java/ssl/jdk1.4/IceSSL/TransceiverI.java
parentminor fixes (diff)
downloadice-bda1b8ab95ba98e3de69070951eaf8849482960c.tar.bz2
ice-bda1b8ab95ba98e3de69070951eaf8849482960c.tar.xz
ice-bda1b8ab95ba98e3de69070951eaf8849482960c.zip
fix for bug 1107: Glacier2/router test failure under JDK 1.4
Diffstat (limited to 'java/ssl/jdk1.4/IceSSL/TransceiverI.java')
-rw-r--r--java/ssl/jdk1.4/IceSSL/TransceiverI.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/java/ssl/jdk1.4/IceSSL/TransceiverI.java b/java/ssl/jdk1.4/IceSSL/TransceiverI.java
index dfd207532cd..b72716942ba 100644
--- a/java/ssl/jdk1.4/IceSSL/TransceiverI.java
+++ b/java/ssl/jdk1.4/IceSSL/TransceiverI.java
@@ -116,6 +116,7 @@ final class TransceiverI implements IceInternal.Transceiver
public void
write(IceInternal.BasicStream stream, int timeout)
+ throws IceInternal.LocalExceptionWrapper
{
java.nio.ByteBuffer buf = stream.prepareWrite();
@@ -181,9 +182,15 @@ final class TransceiverI implements IceInternal.Transceiver
{
if(IceInternal.Network.connectionLost(ex))
{
+ //
+ // Java's SSL implementation might have successfully sent the
+ // packet but then detected loss of connection and raised an
+ // exception. As a result, we cannot be sure that it is safe
+ // to retry in this situation, so we raise LocalExceptionWrapper.
+ //
Ice.ConnectionLostException se = new Ice.ConnectionLostException();
se.initCause(ex);
- throw se;
+ throw new IceInternal.LocalExceptionWrapper(se, false);
}
Ice.SocketException se = new Ice.SocketException();