|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.rmi.Naming
Naming
クラスは、リモートオブジェクトレジストリでリモートオブジェクトへの参照を格納し、取得するためのメソッドを提供します。Naming
クラスのメソッドは、その引数の 1 つとして、URL 形式の java.lang.String
である次のような名前をとります。
//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)
リモートオブジェクトに関連した指定された名前に対するバインディングを破棄します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
メソッドの詳細 |
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
- レジストリに接続できない場合
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.