summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/LocalExceptionWrapper.java
diff options
context:
space:
mode:
authorMichi Henning <michi@zeroc.com>2007-11-21 16:37:35 +1000
committerMichi Henning <michi@zeroc.com>2007-11-21 16:37:35 +1000
commita383113f0becaa15b7e047798aa57026133f9077 (patch)
treedb198efbd739eb6b6b3864c4fdbc0385e4f326be /java/src/IceInternal/LocalExceptionWrapper.java
parentFix a problem where protocol selection and other runtime flags were (diff)
downloadice-a383113f0becaa15b7e047798aa57026133f9077.tar.bz2
ice-a383113f0becaa15b7e047798aa57026133f9077.tar.xz
ice-a383113f0becaa15b7e047798aa57026133f9077.zip
Bug 2541.
Diffstat (limited to 'java/src/IceInternal/LocalExceptionWrapper.java')
-rw-r--r--java/src/IceInternal/LocalExceptionWrapper.java28
1 files changed, 10 insertions, 18 deletions
diff --git a/java/src/IceInternal/LocalExceptionWrapper.java b/java/src/IceInternal/LocalExceptionWrapper.java
index 9ed74e2246f..b41867594f4 100644
--- a/java/src/IceInternal/LocalExceptionWrapper.java
+++ b/java/src/IceInternal/LocalExceptionWrapper.java
@@ -45,7 +45,7 @@ public class LocalExceptionWrapper extends Exception
}
public static void
- throwUnknownWrapper(java.lang.Throwable ex) throws LocalExceptionWrapper
+ throwWrapper(java.lang.Throwable ex) throws LocalExceptionWrapper
{
if(ex instanceof Ice.UserException)
{
@@ -53,30 +53,22 @@ public class LocalExceptionWrapper extends Exception
}
if(ex instanceof Ice.LocalException)
{
- /*
- //
- // Commented-out code makes local exceptions fully location transparent,
- // but the Freeze evictor relies on them not being transparent.
- //
if(ex instanceof Ice.UnknownException ||
ex instanceof Ice.ObjectNotExistException ||
ex instanceof Ice.OperationNotExistException ||
- ex instanceof Ice.FacetNotExistException)
+ ex instanceof Ice.FacetNotExistException ||
+ ex instanceof Ice.CollocationOptimizationException ||
+ ex instanceof Ice.SystemException)
{
throw new LocalExceptionWrapper((Ice.LocalException)ex, false);
}
- throw new LocalExceptionWrapper(new Ice.UnknownLocalException(ex.ice_name()), false);
- */
- throw new LocalExceptionWrapper((Ice.LocalException)ex, false);
- }
- /*
- throw new LocalExceptionWrapper(new Ice.UnknownException(ex.ice_name()), false);
- */
-
- if(ex instanceof RuntimeException)
- {
- throw (RuntimeException)ex;
+ throw new LocalExceptionWrapper(new Ice.UnknownLocalException(((Ice.LocalException)ex).ice_name()), false);
}
+ java.io.StringWriter sw = new java.io.StringWriter();
+ java.io.PrintWriter pw = new java.io.PrintWriter(sw);
+ ex.printStackTrace(pw);
+ pw.flush();
+ throw new LocalExceptionWrapper(new Ice.UnknownException(sw.toString()), false);
}
private Ice.LocalException _ex;