summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/Connection.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceInternal/Connection.java')
-rw-r--r--java/src/IceInternal/Connection.java20
1 files changed, 17 insertions, 3 deletions
diff --git a/java/src/IceInternal/Connection.java b/java/src/IceInternal/Connection.java
index 8d37fbfb35c..b168179422f 100644
--- a/java/src/IceInternal/Connection.java
+++ b/java/src/IceInternal/Connection.java
@@ -746,11 +746,25 @@ public final class Connection extends EventHandler
if(_adapter != null)
{
//
- // Incoming connections play the active role with
- // respect to connection validation.
+ // Incoming connections play the active role with respect
+ // to connection validation, and are implicitly validated.
//
+ try
+ {
+ validateConnection();
+ }
+ catch(Ice.LocalException ex)
+ {
+ if(_warn)
+ {
+ warning("connection exception", ex);
+ }
+ _transceiver.close();
+ _state = StateClosed;
+ throw ex;
+ }
+
_connectionValidated = true;
- validateConnection();
}
else
{