- java.lang.Object
-
- javax.rmi.PortableRemoteObject
-
public class PortableRemoteObject extends Object
服务器实现对象可以从javax.rmi.PortableRemoteObject继承,也可以实现远程接口,然后使用exportObject方法将自身注册为服务对象。 toStub方法接受服务器实现,并返回可用于访问该服务器对象的存根。 连接方法使远程对象准备好进行远程通信。 unreportObject方法用于注销服务器对象,使其可用于垃圾回收。 窄方法采用对象引用或抽象接口类型,并尝试缩小它以符合给定的接口。 如果操作成功,结果将是指定类型的对象,否则将抛出异常。
-
-
构造方法摘要
构造方法 Modifier Constructor 描述 protectedPortableRemoteObject()通过调用exportObject(this)初始化对象。
-
方法摘要
所有方法 静态方法 具体的方法 Modifier and Type 方法 描述 static voidconnect(Remote target, Remote source)使远程对象准备好进行远程通信。static voidexportObject(Remote obj)使服务器对象准备好接收远程调用。static Objectnarrow(Object narrowFrom, Class narrowTo)检查以确保远程或抽象接口类型的对象可以转换为所需类型。static RemotetoStub(Remote obj)返回给定服务器对象的存根。static voidunexportObject(Remote obj)从运行时取消注册服务器对象,允许对象可用于垃圾回收。
-
-
-
构造方法详细信息
-
PortableRemoteObject
protected PortableRemoteObject() throws RemoteException通过调用exportObject(this)初始化对象。- 异常
-
RemoteException- 如果导出失败。
-
-
方法详细信息
-
exportObject
public static void exportObject(Remote obj) throws RemoteException
使服务器对象准备好接收远程调用。 请注意,PortableRemoteObject的子类不需要调用此方法,因为它由构造函数调用。- 参数
-
obj- 要导出的服务器对象。 - 异常
-
RemoteException- 如果导出失败。
-
toStub
public static Remote toStub(Remote obj) throws NoSuchObjectException
返回给定服务器对象的存根。- 参数
-
obj- 需要存根的服务器对象。 必须是PortableRemoteObject的子类,或者以前是exportObject(java.rmi.Remote)的调用目标。 - 结果
- 对象的最导出的存根。
- 异常
-
NoSuchObjectException- 如果给定的服务器对象不能找到存根。
-
unexportObject
public static void unexportObject(Remote obj) throws NoSuchObjectException
从运行时取消注册服务器对象,允许对象可用于垃圾回收。- 参数
-
obj- 要obj导出的对象。 - 异常
-
NoSuchObjectException- 如果远程对象当前未导出。
-
narrow
public static Object narrow(Object narrowFrom, Class narrowTo) throws ClassCastException
检查以确保远程或抽象接口类型的对象可以转换为所需类型。- 参数
-
narrowFrom- 要检查的对象。 -
narrowTo- 所需类型。 - 结果
- 可以将其投射到所需类型的对象。
- 异常
-
ClassCastException- 如果narrowFrom不能被转换为narrowTo。
-
connect
public static void connect(Remote target, Remote source) throws RemoteException
使远程对象准备好进行远程通信。 这通常在对象作为远程方法调用的参数发送或接收时隐含发生,但在某些情况下,通过进行显式调用来执行此操作是有用的。 有关详细信息,请参阅Stub.connect(org.omg.CORBA.ORB)方法。- 参数
-
target- 要连接的对象。 -
source- 以前连接的对象。 - 异常
-
RemoteException- 如果source未连接,或者如果target已经连接到不同的ORB比source。
-
-