java.rmi.registry

接口
java.lang.Object
  继承者 java.rmi.registry.LocateRegistry

public final class LocateRegistry
     
extends Object

LocateRegistry 用于获得对特定主机(包括本地主机)上引导远程对象注册表的引用,或用于创建一个接受对特定端口调用的远程对象注册表。

注意,getRegistry 调用并不实际生成到远程主机的连接。它只创建对远程注册表的本地引用,即便远程主机上没有正运行的注册表,它也会成功创建一个引用。因此,调用作为此方法的结果返回的远程注册表的后续方法可能会失败。

从以下版本开始:
JDK1.1
另请参见:
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)
          返回指定的 hostport 上对远程对象 Registry 的引用。
static Registry getRegistry(String host, int port, RMIClientSocketFactory csf)
          返回本地创建的指定 hostport 上对远程对象 Registry 的远程引用。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

方法详细信息

getRegistry

public static Registry getRegistry()
                            throws RemoteException
返回本地主机在默认注册表端口 1099 上对远程对象 Registry 的引用。

返回:
对远程对象注册表的引用(一个 stub)
抛出:
RemoteException - 如果无法创建该引用
从以下版本开始:
JDK1.1

getRegistry

public static Registry getRegistry(int port)
                            throws RemoteException
返回本地主机在指定 port 上对远程对象 Registry 的引用。

参数:
port - 注册表在其上接受请求的端口
返回:
对远程对象注册表的引用(一个 stub)
抛出:
RemoteException - 如果无法创建该引用
从以下版本开始:
JDK1.1

getRegistry

public static Registry getRegistry(String host)
                            throws RemoteException
返回指定 host 在默认注册表端口 1099 上对远程对象 Registry 的引用。如果 hostnull,则使用本地主机。

参数:
host - 用于远程注册表的主机
返回:
对远程对象注册表的引用(一个 stub)
抛出:
RemoteException - 如果无法创建该引用
从以下版本开始:
JDK1.1

getRegistry

public static Registry getRegistry(String host,
                                   int port)
                            throws RemoteException
返回指定的 hostport 上对远程对象 Registry 的引用。如果 hostnull,则使用本地主机。

参数:
host - 用于远程注册表的主机
port - 注册表在其上接受请求的端口
返回:
对远程对象注册表的引用(一个 stub)
抛出:
RemoteException - 如果无法创建该对象
从以下版本开始:
JDK1.1

getRegistry

public static Registry getRegistry(String host,
                                   int port,
                                   RMIClientSocketFactory csf)
                            throws RemoteException
返回本地创建的指定 hostport 上对远程对象 Registry 的远程引用。与此远程注册表的通信将使用提供的 RMIClientSocketFactory csf 来创建到远程 hostport 上注册表的 Socket 连接。

参数:
host - 用于远程注册表的主机
port - 注册表在其上接受请求的端口
csf - 用于生成到注册表的连接的客户端的 Socket 工厂。如果 csf 为 null,则默认客户端的 Socket 工厂将用于注册表 stub。
返回:
对远程对象注册表的引用(一个 stub)
抛出:
RemoteException - 如果无法创建该引用
从以下版本开始:
1.2

createRegistry

public static Registry createRegistry(int port)
                               throws RemoteException
创建并导出接受指定 port 请求的本地主机上的 Registry 实例。

导出 Registry 实例与调用静态 UnicastRemoteObject.exportObject 方法一样,都是将传入 Registry 实例和指定的 port 作为参数,只不过导出的 Registry 实例具有已知对象的标识标符(用值 ObjID.REGISTRY_ID 构造的 ObjID 实例)。

参数:
port - 注册表在其上接受请求的端口
返回:
注册表
抛出:
RemoteException - 如果无法导出注册表
从以下版本开始:
JDK1.1

createRegistry

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 - 如果无法导出注册表
从以下版本开始:
1.2