2009-08-27 10 views
0

サーバーが別のプロセスで実行しているRMIクライアント/サーバーアプリケーションを作成する必要があります。私は同じプロセスで私のコードを実行していたときに、すべてが正常に動作しているが、異なるプロセスでrmiクライアントサーバーを実行中...バインドされていない例外

ProcessBuilder pb = new ProcessBuilder(
         "java", 
         "-cp", 
         "bin", 
         "server.CodeboxServerImpl"); 

を使用して新しいプロセスでは、サーバーのコードを実行しようとしたとき、私はクライアントからスロー結合していない例外を取得しています。

私は何かが欠けています私はrmiregestryを開始して、クライアントとサーバーの両方で、コードの中で私は

Registry reg = LocateRegistry.getRegistry("localhost");. 

を使用していますか?

答えて

0

started your rmi registery processがあることを確認してください。

LocateRegistry.getRegistryに問題がある場合はRemoteExceptionNotBoundExceptionではなくスローします。

サーバーのスタブをレジストリにバインドしていない場合は、NotBoundExceptionが返されることがあります。サーバーコードでは、名前を使用してreg.bindを呼び出して、ProcessBuilderstubをレジストリにバインドできます。クライアントは、その名前でstubをレジストリから取得できます。

詳細はhereをお読みください。

関連する問題