@Test public void testUnExport() throws Exception { RMITestImpl servant = new RMITestImpl(); assertNotNull(Util.getTie(servant)); PortableRemoteObject.unexportObject(servant); assertNull(Util.getTie(servant)); }
public Revokedconsent create(String arg0, String arg1) throws CreateException, RemoteException { while (true) { if (!Util.isLocal(this)) { InputStream in = null; try { try { org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream) _request("create__CORBA_WStringValue__CORBA_WStringValue", true); out.write_value(arg0, String.class); out.write_value(arg1, String.class); in = (InputStream) _invoke(out); return (Revokedconsent) in.read_Object(Revokedconsent.class); } catch (ApplicationException ex) { in = (InputStream) ex.getInputStream(); String id = in.read_string(); if (id.equals("IDL:javax/ejb/CreateEx:1.0")) { throw (CreateException) in.read_value(CreateException.class); } throw new UnexpectedException(id); } catch (RemarshalException ex) { continue; } } catch (SystemException ex) { throw Util.mapSystemException(ex); } finally { _releaseReply(in); } } else { ServantObject so = _servant_preinvoke( "create__CORBA_WStringValue__CORBA_WStringValue", com.ardais.bigr.iltds.beans.RevokedconsentHome.class); if (so == null) { continue; } try { Revokedconsent result = ((com.ardais.bigr.iltds.beans.RevokedconsentHome) so.servant).create(arg0, arg1); return (Revokedconsent) Util.copyObject(result, _orb()); } catch (Throwable ex) { Throwable exCopy = (Throwable) Util.copyObject(ex, _orb()); if (exCopy instanceof CreateException) { throw (CreateException) exCopy; } throw Util.wrapException(exCopy); } finally { _servant_postinvoke(so); } } } }
/** Returns the maximum stream format version supported by our ValueHandler. */ public static byte getMaxStreamFormatVersion() { ValueHandler vh = Util.createValueHandler(); if (!(vh instanceof javax.rmi.CORBA.ValueHandlerMultiFormat)) return ORBConstants.STREAM_FORMAT_VERSION_1; else return ((ValueHandlerMultiFormat) vh).getMaximumStreamFormatVersion(); }
private OutputStream _get_homeHandle( org.omg.CORBA_2_3.portable.InputStream in, ResponseHandler reply) throws Throwable { HomeHandle result = target.getHomeHandle(); OutputStream out = reply.createReply(); Util.writeAbstractObject(out, result); return out; }
public PresentationManager.StubFactory createStubFactory( String className, boolean isIDLStub, String remoteCodeBase, Class expectedClass, ClassLoader classLoader) { Class cls = null; try { cls = Util.loadClass(className, remoteCodeBase, classLoader); } catch (ClassNotFoundException exc) { throw wrapper.classNotFound3(CompletionStatus.COMPLETED_MAYBE, exc, className); } PresentationManager pm = ORB.getPresentationManager(); if (IDLEntity.class.isAssignableFrom(cls) && !Remote.class.isAssignableFrom(cls)) { // IDL stubs must always use static factories. PresentationManager.StubFactoryFactory sff = pm.getStubFactoryFactory(false); PresentationManager.StubFactory sf = sff.createStubFactory(className, true, remoteCodeBase, expectedClass, classLoader); return sf; } else { PresentationManager.ClassData classData = pm.getClassData(cls); return makeDynamicStubFactory(pm, classData, classLoader); } }
private OutputStream _get_primaryKey( org.omg.CORBA_2_3.portable.InputStream in, ResponseHandler reply) throws Throwable { Object result = target.getPrimaryKey(); OutputStream out = reply.createReply(); Util.writeAny(out, result); return out; }
public PtsOperation create() throws CreateException, RemoteException { while (true) { if (!Util.isLocal(this)) { InputStream in = null; try { try { OutputStream out = _request("create", true); in = (InputStream) _invoke(out); return (PtsOperation) in.read_Object(PtsOperation.class); } catch (ApplicationException ex) { in = (InputStream) ex.getInputStream(); String id = in.read_string(); if (id.equals("IDL:javax/ejb/CreateEx:1.0")) { throw (CreateException) in.read_value(CreateException.class); } throw new UnexpectedException(id); } catch (RemarshalException ex) { continue; } } catch (SystemException ex) { throw Util.mapSystemException(ex); } finally { _releaseReply(in); } } else { ServantObject so = _servant_preinvoke("create", com.ardais.bigr.iltds.beans.PtsOperationHome.class); if (so == null) { continue; } try { PtsOperation result = ((com.ardais.bigr.iltds.beans.PtsOperationHome) so.servant).create(); return (PtsOperation) Util.copyObject(result, _orb()); } catch (Throwable ex) { Throwable exCopy = (Throwable) Util.copyObject(ex, _orb()); if (exCopy instanceof CreateException) { throw (CreateException) exCopy; } throw Util.wrapException(exCopy); } finally { _servant_postinvoke(so); } } } }
public EJBHome getEJBHome() throws RemoteException { while (true) { if (!Util.isLocal(this)) { InputStream in = null; try { try { OutputStream out = _request("_get_EJBHome", true); in = _invoke(out); return (EJBHome) in.read_Object(EJBHome.class); } catch (ApplicationException ex) { in = ex.getInputStream(); String id = in.read_string(); throw new UnexpectedException(id); } catch (RemarshalException ex) { continue; } } catch (SystemException ex) { throw Util.mapSystemException(ex); } finally { _releaseReply(in); } } else { ServantObject so = _servant_preinvoke("_get_EJBHome", javax.ejb.HomeHandle.class); if (so == null) { continue; } try { EJBHome result = ((javax.ejb.HomeHandle) so.servant).getEJBHome(); return (EJBHome) Util.copyObject(result, _orb()); } catch (Throwable ex) { Throwable exCopy = (Throwable) Util.copyObject(ex, _orb()); throw Util.wrapException(exCopy); } finally { _servant_postinvoke(so); } } } }
private OutputStream remove__java_lang_Object( org.omg.CORBA_2_3.portable.InputStream in, ResponseHandler reply) throws Throwable { Object arg0 = Util.readAny(in); try { target.remove(arg0); } catch (RemoveException ex) { String id = "IDL:javax/ejb/RemoveEx:1.0"; org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream) reply.createExceptionReply(); out.write_string(id); out.write_value(ex, RemoveException.class); return out; } OutputStream out = reply.createReply(); return out; }
/* */ public String implementation(String paramString) /* */ { /* */ try /* */ { /* 88 */ if (this.vhandler == null) { /* 89 */ this.vhandler = ValueHandlerImpl.getInstance(false); /* */ } /* */ /* 94 */ String str = Util.getCodebase(this.vhandler.getClassFromType(paramString)); /* 95 */ if (str == null) { /* 96 */ return ""; /* */ } /* 98 */ return str; /* */ } catch (ClassNotFoundException localClassNotFoundException) { /* 100 */ throw this.wrapper.missingLocalValueImpl( CompletionStatus.COMPLETED_MAYBE, localClassNotFoundException); /* */ } /* */ }
private OutputStream create(org.omg.CORBA_2_3.portable.InputStream in, ResponseHandler reply) throws Throwable { IcpOperation result; try { result = target.create(); } catch (CreateException ex) { String id = "IDL:javax/ejb/CreateEx:1.0"; org.omg.CORBA_2_3.portable.OutputStream out = (org.omg.CORBA_2_3.portable.OutputStream) reply.createExceptionReply(); out.write_string(id); out.write_value(ex, CreateException.class); return out; } OutputStream out = reply.createReply(); Util.writeRemoteObject(out, result); return out; }
public OutputStream _invoke(String method, InputStream _in, ResponseHandler reply) throws SystemException { try { org.omg.CORBA_2_3.portable.InputStream in = (org.omg.CORBA_2_3.portable.InputStream) _in; if (method.equals("executeCommand")) { Command arg0 = (Command) in.read_value(Command.class); Object result = target.executeCommand(arg0); OutputStream out = reply.createReply(); Util.writeAny(out, result); return out; } throw new BAD_OPERATION(); } catch (SystemException ex) { throw ex; } catch (Throwable ex) { throw new UnknownException(ex); } }
public void remove(Object arg0) throws RemoteException, RemoveException { while (true) { if (!Util.isLocal(this)) { InputStream in = null; try { try { OutputStream out = _request("remove__java_lang_Object", true); Util.writeAny(out, arg0); _invoke(out); return; } catch (ApplicationException ex) { in = (InputStream) ex.getInputStream(); String id = in.read_string(); if (id.equals("IDL:javax/ejb/RemoveEx:1.0")) { throw (RemoveException) in.read_value(RemoveException.class); } throw new UnexpectedException(id); } catch (RemarshalException ex) { continue; } } catch (SystemException ex) { throw Util.mapSystemException(ex); } finally { _releaseReply(in); } } else { ServantObject so = _servant_preinvoke("remove__java_lang_Object", javax.ejb.EJBHome.class); if (so == null) { continue; } try { Object arg0Copy = (Object) Util.copyObject(arg0, _orb()); ((javax.ejb.EJBHome) so.servant).remove(arg0Copy); return; } catch (Throwable ex) { Throwable exCopy = (Throwable) Util.copyObject(ex, _orb()); if (exCopy instanceof RemoveException) { throw (RemoveException) exCopy; } throw Util.wrapException(exCopy); } finally { _servant_postinvoke(so); } } } }
/** * Sends a request message to the server, receives the reply from the server, and returns an * <code>Object</code> result to the caller. */ public Object invoke(String operationName, StubStrategy stubStrategy, Object[] params) throws Throwable { if (operationName.equals("_get_handle") && this instanceof javax.ejb.EJBObject) { if (handle == null) { handle = new HandleImplIIOP(this); } return handle; } else if (operationName.equals("_get_homeHandle") && this instanceof javax.ejb.EJBHome) { if (handle == null) { handle = new HomeHandleImplIIOP(this); } return handle; } else if (!_is_local()) { // remote call path // To check whether this is a local stub or not we must call // org.omg.CORBA.portable.ObjectImpl._is_local(), and _not_ // javax.rmi.CORBA.Util.isLocal(Stub s), which in Sun's JDK // always return false. InputStream in = null; try { try { OutputStream out = (OutputStream) _request(operationName, true); stubStrategy.writeParams(out, params); trace("sent request: " + operationName); in = (InputStream) _invoke(out); if (stubStrategy.isNonVoid()) { trace("received reply"); return stubStrategy.readRetval(in); // Object retval = stubStrategy.readRetval(in); // trace("retval: " + retval); // return retval; } else return null; } catch (ApplicationException ex) { trace("got application exception"); in = (InputStream) ex.getInputStream(); throw stubStrategy.readException(ex.getId(), in); } catch (RemarshalException ex) { trace("got remarshal exception"); return invoke(operationName, stubStrategy, params); } } catch (SystemException ex) { if (EjbLogger.EJB3_INVOCATION_LOGGER.isTraceEnabled()) { EjbLogger.EJB3_INVOCATION_LOGGER.trace("CORBA system exception in IIOP stub", ex); } throw Util.mapSystemException(ex); } finally { _releaseReply(in); } } else { // local call path org.omg.CORBA.portable.ServantObject so = _servant_preinvoke(operationName, Object.class); if (so == null) return invoke(operationName, stubStrategy, params); try { // params = Util.copyObjects(params, _orb()); Object retval = ((LocalIIOPInvoker) so.servant) .invoke( operationName, params, null, /* tx */ null, /* identity */ null /* credential */); return stubStrategy.convertLocalRetval(retval); // retval = stubStrategy.convertLocalRetval(retval); // return Util.copyObject(retval, _orb()); } catch (Throwable e) { // Throwable ex = (Throwable)Util.copyObject(e, _orb()); Throwable ex = e; if (stubStrategy.isDeclaredException(ex)) throw ex; else throw Util.wrapException(ex); } finally { _servant_postinvoke(so); } } }
/** Return default ValueHandler */ public static ValueHandler createValueHandler() { return Util.createValueHandler(); }
@Test public void testExport() throws Exception { RMITestImpl servant = new RMITestImpl(); assertNotNull(Util.getTie(servant)); }
/* */ public java.lang.Object invoke( java.lang.Object paramObject, final Method paramMethod, java.lang.Object[] paramArrayOfObject) /* */ throws Throwable /* */ { /* 126 */ String str = this.classData.getIDLNameTranslator().getIDLName(paramMethod); /* */ /* 128 */ DynamicMethodMarshaller localDynamicMethodMarshaller = this.pm.getDynamicMethodMarshaller(paramMethod); /* */ /* 131 */ Delegate localDelegate = null; /* */ try { /* 133 */ localDelegate = StubAdapter.getDelegate(this.stub); /* */ } catch (SystemException localSystemException1) { /* 135 */ throw Util.mapSystemException(localSystemException1); /* */ } /* */ java.lang.Object localObject1; /* 138 */ if (!isLocal()) { /* */ try { /* 140 */ InputStream localInputStream = null; /* */ try /* */ { /* 143 */ OutputStream localOutputStream = (OutputStream) localDelegate.request(this.stub, str, true); /* */ /* 148 */ localDynamicMethodMarshaller.writeArguments( localOutputStream, paramArrayOfObject); /* */ /* 151 */ localInputStream = (InputStream) localDelegate.invoke(this.stub, localOutputStream); /* */ /* 155 */ return localDynamicMethodMarshaller.readResult(localInputStream); /* */ } catch (ApplicationException localApplicationException) { /* 157 */ throw localDynamicMethodMarshaller.readException(localApplicationException); /* */ } catch (RemarshalException localRemarshalException) { /* 159 */ return invoke(paramObject, paramMethod, paramArrayOfObject); /* */ } finally { /* 161 */ localDelegate.releaseReply(this.stub, localInputStream); /* */ } /* */ } catch (SystemException localSystemException2) { /* 164 */ throw Util.mapSystemException(localSystemException2); /* */ } /* */ } /* */ /* 168 */ ORB localORB = (ORB) localDelegate.orb(this.stub); /* 169 */ ServantObject localServantObject = localDelegate.servant_preinvoke(this.stub, str, paramMethod.getDeclaringClass()); /* */ /* 171 */ if (localServantObject == null) /* 172 */ return invoke(this.stub, paramMethod, paramArrayOfObject); /* */ try /* */ { /* 175 */ localObject1 = localDynamicMethodMarshaller.copyArguments(paramArrayOfObject, localORB); /* */ /* 177 */ if (!paramMethod.isAccessible()) /* */ { /* 181 */ AccessController.doPrivileged( new PrivilegedAction() { /* */ public java.lang.Object run() { /* 183 */ paramMethod.setAccessible(true); /* 184 */ return null; /* */ } /* */ }); /* */ } /* */ /* 189 */ localObject3 = paramMethod.invoke(localServantObject.servant, (java.lang.Object[]) localObject1); /* */ /* 191 */ return localDynamicMethodMarshaller.copyResult(localObject3, localORB); /* */ } catch (InvocationTargetException localInvocationTargetException) { /* 193 */ java.lang.Object localObject3 = localInvocationTargetException.getCause(); /* */ /* 195 */ java.lang.Object localObject4 = (Throwable) Util.copyObject(localObject3, localORB); /* 196 */ if (localDynamicMethodMarshaller.isDeclaredException((Throwable) localObject4)) { /* 197 */ throw ((Throwable) localObject4); /* */ } /* 199 */ throw Util.wrapException((Throwable) localObject4); /* */ } catch (Throwable localThrowable) { /* 201 */ if ((localThrowable instanceof ThreadDeath)) { /* 202 */ throw ((ThreadDeath) localThrowable); /* */ } /* */ /* 207 */ throw Util.wrapException(localThrowable); /* */ } finally { /* 209 */ localDelegate.servant_postinvoke(this.stub, localServantObject); /* */ } /* */ }