diff options
Diffstat (limited to 'gnu/CORBA/gnuRequest.java')
| -rw-r--r-- | gnu/CORBA/gnuRequest.java | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/gnu/CORBA/gnuRequest.java b/gnu/CORBA/gnuRequest.java index 0665e919b..5f674aa2e 100644 --- a/gnu/CORBA/gnuRequest.java +++ b/gnu/CORBA/gnuRequest.java @@ -69,6 +69,7 @@ import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; +import org.omg.CORBA.UnknownUserException; /** * The implementation of the CORBA request. @@ -786,17 +787,15 @@ public class gnuRequest input.align(8); align = false; } - input.mark(2000); - String uxId = input.read_string(); - input.reset(); + // Prepare an Any that will hold the exception. + gnuAny exc = new gnuAny(); - UserException uex = ObjectCreator.readUserException(uxId, input); + exc.insert_Streamable(new streamReadyHolder(input)); + + UnknownUserException unuex = new UnknownUserException(exc); + m_environment.exception(unuex); - if (uex == null) - m_environment.exception(new UserException(uxId)); - else - m_environment.exception(uex); break; case ReplyHeader.LOCATION_FORWARD_PERM : |
