4

RMI 経由で接続できるサービス オブジェクトがあります。現在、私はこれをやっています:

サーバ

Registry r = LocateRegistry.createRegistry(1234);
r.bind("server", UnicastRemoteObject.exportObject(remoteServer, 0));

クライアント

RemoteServer s = LocateRegistry.getRegistry("example.com", 1234).lookup("server");

サーバー上のレジストリの用途は、1 つのサーバー オブジェクトにリンクするという 1 つのみです。私はサーバー上でこれを行うのと同じくらい良いかもしれないと考えました:

UnicastRemoteObject.exportObject(remoteServer, 1234);

しかし、クライアントからサーバー オブジェクトに接続するにはどうすればよいでしょうか。

4

3 に答える 3

1

不可能ではありませんが、レジストリがエクスポートされたオブジェクトのスタブ オブジェクトをクライアントに伝達するため、実用的ではありません ( http://www.developer.com/print.php/3455311を参照)。そのための別のメカニズムがなければ、行き詰まるでしょう。分散システムでレジストリを使用することには他の利点があるため、実際には他の理由 (場所の透過性など) のためにレジストリを保持することをお勧めします。

于 2011-02-01T15:25:33.070 に答える