public final class Naming extends Object
Naming
クラスは、リモート・オブジェクト・レジストリ内のリモート・オブジェクトへの参照を取得および格納するためのメソッドを提供します。Naming
クラスの各メソッドは、その引数の1つとして、次のようなjava.lang.String
型のURL形式(ただしスキーム・コンポーネントは除く)の名前をとります。
//host:port/name
host
はレジストリのある(リモートまたはローカル)ホスト、port
はレジストリが呼出しを受け入れるポート番号、name
はレジストリによって解釈されない単純な文字列です。host
およびport
の指定はオプションです。host
を省略すると、デフォルトでローカル・ホストが使われます。port
を省略すると、ポートはデフォルトで1099になります。これは、RMIのレジストリrmiregistry
が使う「よく知られた」ポートです。
リモート・オブジェクトの名前のバインディングとは、あとでこのリモート・オブジェクトを検索して使うことができるように、リモート・オブジェクトに名前を関連付ける、あるいは登録することをいいます。Naming
クラスのbind
メソッドまたはrebind
メソッドを使って、リモート・オブジェクトを名前と関連付けることができます。
リモート・オブジェクトがローカル・ホストでRMIレジストリに登録(バインディング)されると、リモート(またはローカル)ホストの呼出し側は名前でリモート・オブジェクトを参照し、その参照を取得し、そのオブジェクトでリモート・メソッドを呼び出すことができます。レジストリはホストで動作しているすべてのサーバーで共有でき、必要な場合は、個々のサーバー・プロセスが独自のレジストリを作成および使用することもできます。詳細は、java.rmi.registry.LocateRegistry.createRegistry
メソッドを参照してください。
Registry
, LocateRegistry
, LocateRegistry.createRegistry(int)
修飾子と型 | メソッドと説明 |
---|---|
static void |
bind(String name, Remote obj)
指定された
name をリモート・オブジェクトにバインドします。 |
static String[] |
list(String name)
レジストリ内のバインドされている名前の配列を返します。
|
static Remote |
lookup(String name)
指定された
name に関連したリモート・オブジェクトの参照(スタブ)を返します。 |
static void |
rebind(String name, Remote obj)
指定された名前を新しいリモート・オブジェクトにバインドし直します。
|
static void |
unbind(String name)
リモート・オブジェクトに関連した指定された名前に対するバインディングを破棄します。
|
public static Remote lookup(String name) throws NotBoundException, MalformedURLException, RemoteException
name
に関連したリモート・オブジェクトの参照(スタブ)を返します。name
- URL形式の名前(ただしスキーム・コンポーネントは除く)NotBoundException
- 名前がバインドされていない場合RemoteException
- レジストリに接続できない場合AccessException
- この操作が許可されていない場合MalformedURLException
- 名前が適切な形式のURLでない場合public static void bind(String name, Remote obj) throws AlreadyBoundException, MalformedURLException, RemoteException
name
をリモート・オブジェクトにバインドします。name
- URL形式の名前(ただしスキーム・コンポーネントは除く)obj
- リモート・オブジェクトの参照(通常はスタブ)AlreadyBoundException
- 名前がすでにバインドされている場合MalformedURLException
- 名前が適切な形式のURLでない場合RemoteException
- レジストリに接続できない場合AccessException
- この操作が許可されていない場合(たとえば、ローカルではないホストから操作している場合)public static void unbind(String name) throws RemoteException, NotBoundException, MalformedURLException
name
- URL形式の名前(ただしスキーム・コンポーネントは除く)NotBoundException
- 名前がバインドされていない場合MalformedURLException
- 名前が適切な形式のURLでない場合RemoteException
- レジストリに接続できない場合AccessException
- この操作が許可されていない場合(たとえば、ローカルではないホストから操作している場合)public static void rebind(String name, Remote obj) throws RemoteException, MalformedURLException
name
- URL形式の名前(ただしスキーム・コンポーネントは除く)obj
- 名前に関連付ける新しいリモート・オブジェクトMalformedURLException
- 名前が適切な形式のURLでない場合RemoteException
- レジストリに接続できない場合AccessException
- この操作が許可されていない場合(たとえば、ローカルではないホストから操作している場合)public static String[] list(String name) throws RemoteException, MalformedURLException
name
- URL形式のレジストリ名(ただしスキーム・コンポーネントは除く)MalformedURLException
- 名前が適切な形式のURLでない場合RemoteException
- レジストリに接続できない場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.