summaryrefslogtreecommitdiff
path: root/java/src/IceBox/ServiceManagerI.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceBox/ServiceManagerI.java')
-rw-r--r--java/src/IceBox/ServiceManagerI.java14
1 files changed, 11 insertions, 3 deletions
diff --git a/java/src/IceBox/ServiceManagerI.java b/java/src/IceBox/ServiceManagerI.java
index 6be461c616b..90fc32e4558 100644
--- a/java/src/IceBox/ServiceManagerI.java
+++ b/java/src/IceBox/ServiceManagerI.java
@@ -849,9 +849,17 @@ public class ServiceManagerI extends _ServiceManagerDisp
{
if(_traceServiceObserver >= 1)
{
- _logger.trace("IceBox.ServiceObserver",
- "Removed service observer " + _server.communicator().proxyToString(observer)
- + "\nafter catching " + ex.toString());
+ //
+ // CommunicatorDestroyedException may occur during shutdown. The observer notification has
+ // been sent, but the communicator was destroyed before the reply was received. We do not
+ // log a message for this exception.
+ //
+ if(!(ex instanceof Ice.CommunicatorDestroyedException))
+ {
+ _logger.trace("IceBox.ServiceObserver",
+ "Removed service observer " + _server.communicator().proxyToString(observer)
+ + "\nafter catching " + ex.toString());
+ }
}
}