/** Method introduced for local invocations as there is no Reply or Stream involved */
  public void updateException(Throwable ex) {
    if (ex instanceof org.omg.CORBA.SystemException) {
      org.jacorb.orb.SystemExceptionHelper.insert(
          sending_exception, (org.omg.CORBA.SystemException) ex);
      setReplyStatus(SYSTEM_EXCEPTION.value);
    } else if (ex instanceof org.omg.PortableInterceptor.ForwardRequest) {
      forward_reference = ((org.omg.PortableInterceptor.ForwardRequest) ex).forward;
      setReplyStatus(LOCATION_FORWARD.value);
    } else if (ex instanceof UserException) {
      org.jacorb.orb.SystemExceptionHelper.insert(
          sending_exception, new org.omg.CORBA.UNKNOWN("Received UserException " + ex));

      setReplyStatus(USER_EXCEPTION.value);
    }
  }
  /** Set the sending_exception attribute. */
  public void update() {
    if (request != null) {
      if (!request.streamBased()) {
        Any user_ex = request.except();
        if (user_ex != null) {
          sending_exception = user_ex;
        }
      }

      SystemException sys_ex = request.getSystemException();
      if (sys_ex != null) {
        org.jacorb.orb.SystemExceptionHelper.insert(sending_exception, sys_ex);
      }

      forward_reference = request.getForwardReference();
    }
  }