summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2018-10-16 00:56:00 +0200
committerJose <jose@zeroc.com>2018-10-16 00:56:00 +0200
commit1cf1372d13f0e457bdf615df0de060995790d07e (patch)
tree65d50379d5cacb4de14e287d9b03d353232923ec
parentTypescript support (diff)
downloadice-1cf1372d13f0e457bdf615df0de060995790d07e.tar.bz2
ice-1cf1372d13f0e457bdf615df0de060995790d07e.tar.xz
ice-1cf1372d13f0e457bdf615df0de060995790d07e.zip
Fix handling of ServantError
Close #245
-rw-r--r--java-compat/src/Ice/src/main/java/IceInternal/Incoming.java4
-rw-r--r--java/src/Ice/src/main/java/com/zeroc/IceInternal/Incoming.java4
-rw-r--r--js/src/Ice/ConnectionI.js4
-rw-r--r--js/src/Ice/Exception.js11
-rw-r--r--js/src/Ice/IncomingAsync.js5
5 files changed, 8 insertions, 20 deletions
diff --git a/java-compat/src/Ice/src/main/java/IceInternal/Incoming.java b/java-compat/src/Ice/src/main/java/IceInternal/Incoming.java
index 3c01b037c68..57a6ab94678 100644
--- a/java-compat/src/Ice/src/main/java/IceInternal/Incoming.java
+++ b/java-compat/src/Ice/src/main/java/IceInternal/Incoming.java
@@ -221,6 +221,10 @@ final public class Incoming extends IncomingBase implements Ice.Request
response(false);
}
}
+ catch(IceInternal.ServantError ex)
+ {
+ throw ex;
+ }
catch(java.lang.Throwable ex)
{
if(_inAsync != null)
diff --git a/java/src/Ice/src/main/java/com/zeroc/IceInternal/Incoming.java b/java/src/Ice/src/main/java/com/zeroc/IceInternal/Incoming.java
index 238b3760d6f..fc0e789428c 100644
--- a/java/src/Ice/src/main/java/com/zeroc/IceInternal/Incoming.java
+++ b/java/src/Ice/src/main/java/com/zeroc/IceInternal/Incoming.java
@@ -252,6 +252,10 @@ final public class Incoming implements com.zeroc.Ice.Request
}
}
}
+ catch(ServantError ex)
+ {
+ throw ex;
+ }
catch(Throwable ex)
{
completed(ex, false);
diff --git a/js/src/Ice/ConnectionI.js b/js/src/Ice/ConnectionI.js
index d5a9ae8cfed..9c7ac5df77f 100644
--- a/js/src/Ice/ConnectionI.js
+++ b/js/src/Ice/ConnectionI.js
@@ -1942,10 +1942,6 @@ class ConnectionI
{
this.invokeException(ex, invokeNum);
}
- else if(ex instanceof Ice.ServantError)
- {
- // Ignore
- }
else
{
//
diff --git a/js/src/Ice/Exception.js b/js/src/Ice/Exception.js
index 162b28a7622..dddabd88cd2 100644
--- a/js/src/Ice/Exception.js
+++ b/js/src/Ice/Exception.js
@@ -51,17 +51,6 @@ const toString = function(key, object, objectTable, ident)
return s;
};
-class ServantError extends Error
-{
- constructor(cause)
- {
- super();
- this.cause = cause;
- }
-}
-
-Ice.ServantError = ServantError;
-
//
// Ice.Exception
//
diff --git a/js/src/Ice/IncomingAsync.js b/js/src/Ice/IncomingAsync.js
index 39cc2faa94e..86e785b0531 100644
--- a/js/src/Ice/IncomingAsync.js
+++ b/js/src/Ice/IncomingAsync.js
@@ -349,11 +349,6 @@ class IncomingAsync
{
this._connection.sendNoResponse();
}
-
- if(!amd)
- {
- throw new Ice.ServantError(ex);
- }
}
this._connection = null;