|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
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.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.