java.lang.Object java.rmi.registry.LocateRegistry
public final class LocateRegistry
LocateRegistry
用于获得对特定主机(包括本地主机)上引导远程对象注册表的引用,或用于创建一个接受对特定端口调用的远程对象注册表。
注意,getRegistry
调用并不实际生成到远程主机的连接。它只创建对远程注册表的本地引用,即便远程主机上没有正运行的注册表,它也会成功创建一个引用。因此,调用作为此方法的结果返回的远程注册表的后续方法可能会失败。
Registry
方法摘要 | |
---|---|
static Registry |
createRegistry(int port) 创建并导出接受指定 port 请求的本地主机上的 Registry 实例。 |
static Registry |
createRegistry(int port, RMIClientSocketFactory csf, RMIServerSocketFactory ssf) 在本地主机上创建并导出 Registry 实例,该本地主机使用的是与该实例通信的自定义套接字工厂。 |
static Registry |
getRegistry() 返回本地主机在默认注册表端口 1099 上对远程对象 Registry 的引用。 |
static Registry |
getRegistry(int port) 返回本地主机在指定 port 上对远程对象 Registry 的引用。 |
static Registry |
getRegistry(String host) 返回指定 host 在默认注册表端口 1099 上对远程对象 Registry 的引用。 |
static Registry |
getRegistry(String host, int port) 返回指定的 host 和 port 上对远程对象 Registry 的引用。 |
static Registry |
getRegistry(String host, int port, RMIClientSocketFactory csf) 返回本地创建的指定 host 和 port 上对远程对象 Registry 的远程引用。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
方法详细信息 |
---|
public static Registry getRegistry() throws RemoteException
Registry
的引用。
RemoteException
- 如果无法创建该引用
public static Registry getRegistry(int port) throws RemoteException
port
上对远程对象
Registry
的引用。
port
- 注册表在其上接受请求的端口
RemoteException
- 如果无法创建该引用
public static Registry getRegistry(String host) throws RemoteException
host
在默认注册表端口 1099 上对远程对象
Registry
的引用。如果
host
为
null
,则使用本地主机。
host
- 用于远程注册表的主机
RemoteException
- 如果无法创建该引用
public static Registry getRegistry(String host, int port) throws RemoteException
host
和
port
上对远程对象
Registry
的引用。如果
host
为
null
,则使用本地主机。
host
- 用于远程注册表的主机
port
- 注册表在其上接受请求的端口
RemoteException
- 如果无法创建该对象
public static Registry getRegistry(String host, int port, RMIClientSocketFactory csf) throws RemoteException
host
和
port
上对远程对象
Registry
的远程引用。与此远程注册表的通信将使用提供的
RMIClientSocketFactory
csf
来创建到远程
host
和
port
上注册表的
Socket
连接。
host
- 用于远程注册表的主机
port
- 注册表在其上接受请求的端口
csf
- 用于生成到注册表的连接的客户端的
Socket
工厂。如果
csf
为 null,则默认客户端的
Socket
工厂将用于注册表 stub。
RemoteException
- 如果无法创建该引用
public static Registry createRegistry(int port) throws RemoteException
port
请求的本地主机上的
Registry
实例。
导出 Registry
实例与调用静态 UnicastRemoteObject.exportObject
方法一样,都是将传入 Registry
实例和指定的 port
作为参数,只不过导出的 Registry
实例具有已知对象的标识标符(用值 ObjID.REGISTRY_ID
构造的 ObjID
实例)。
port
- 注册表在其上接受请求的端口
RemoteException
- 如果无法导出注册表
public static Registry createRegistry(int port, RMIClientSocketFactory csf, RMIServerSocketFactory ssf) throws RemoteException
Registry
实例,该本地主机使用的是与该实例通信的自定义套接字工厂。创建的注册表使用从提供的
RMIServerSocketFactory
创建的
ServerSocket
侦听给定
port
上的传入请求。
导出 Registry
实例与调用静态 UnicastRemoteObject.exportObject
方法一样,都是将传入 Registry
实例、指定的 port
、指定的 RMIClientSocketFactory
和指定的 RMIServerSocketFactory
作为参数,只不过 Registry
实例具有已知对象的标识符(用值 ObjID.REGISTRY_ID
构造的 ObjID
实例)。
port
- 注册表在其上接受请求的端口
csf
- 用于连接到注册表的客户端的
Socket
工厂
ssf
- 用于生成到注册表的连接的服务器端的
ServerSocket
工厂
RemoteException
- 如果无法导出注册表