java.lang.Object javax.rmi.PortableRemoteObject
public class PortableRemoteObject
服务器实现对象可以从 javax.rmi.PortableRemoteObject 继承,也可以实现一个远程接口,然后使用 exportObject 方法将其本身注册为服务器对象。toStub 方法采用服务器实现,并返回一个可用于访问该服务器对象的 stub。连接方法使 Remote 对象准备好进行远程通信。unexportObject 方法用于注销服务器对象,使之可用于垃圾回收。narrow 方法采用一个对象引用或抽象接口类型,并尝试使其变窄以适合给定的接口。如果该操作成功,结果将是一个指定类型的对象,否则将抛出一个异常。
构造方法摘要 | |
---|---|
protected |
PortableRemoteObject() 通过调用 exportObject(this) 初始化该对象。 |
方法摘要 | |
---|---|
static void |
connect(Remote target, Remote source) 使 Remote 对象准备好进行远程通信。 |
static void |
exportObject(Remote obj) 准备服务器对象,以接收远程调用。 |
static Object |
narrow(Object narrowFrom, Class narrowTo) 检查以确保远程或抽象接口类型的对象可以强制转换为所需的类型。 |
static Remote |
toStub(Remote obj) 返回给定服务器对象的 stub。 |
static void |
unexportObject(Remote obj) 从运行时注销服务器对象,允许对象用于垃圾回收。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
protected PortableRemoteObject() throws RemoteException
exportObject(this)
初始化该对象。
RemoteException
- 如果导出失败。
方法详细信息 |
---|
public static void exportObject(Remote obj) throws RemoteException
obj
- 要导出的服务器对象。
RemoteException
- 如果导出失败。
public static Remote toStub(Remote obj) throws NoSuchObjectException
obj
- 需要 stub 的服务器对象。必须为 PortableRemoteObject 的一个子类,或者以前已经是调用
exportObject(java.rmi.Remote)
的目标。
NoSuchObjectException
- 如果找不到给定服务器对象的 stub。
public static void unexportObject(Remote obj) throws NoSuchObjectException
obj
- 要撤消导出的对象。
NoSuchObjectException
- 如果当前未导出远程对象。
public static Object narrow(Object narrowFrom, Class narrowTo) throws ClassCastException
narrowFrom
- 要检查的对象。
narrowTo
- 所需的类型。
ClassCastException
- 如果 narrowFrom 不能强制转换为 narrowTo。
public static void connect(Remote target, Remote source) throws RemoteException
Stub#connect
方法。
target
- 要连接的对象。
source
- 以前连接的对象。
RemoteException
- 如果
source
未连接,或者如果
target
已经连接到与
source
不同的 ORB。