2011-06-29 7 views
0

ローカルホスト上で複数のクライアントを実行する限り、すべて正常に動作します。別のホストでクライアントを起動すると問題が発生します。Java RMIのリモートクライアントでリモートルックアップ

例えば、実行中のある時点では、ローカルホストを宛先として呼び出されます。つまり、サーバーは突然リモートクライアントのIPアドレスを忘れてしまいます。そんなことがあるものか?

また、サーバーによって実行されるリモートルックアップは、永久に完了するまでにかかります。それは私のルータがそれへのアクセスを拒否することができますか?または、サーバーがリモートホストに到達するために別のパスを使用しようとしていますか?

+0

サーバーがクライアントのIPを忘れているとはどういう意味ですか?クライアントはサーバと通信を開始し、サーバはリストを作成するか、それらのIPデータをいくつかの場所に保存して、さらなる通信に使用する必要があります。 – doNotCheckMyBlog

+1

クライアント側からどのように検索しますか?どのようにサーバー側でレジストリを作成しますか?あなたのアプリから、またはそれを前に始める?レジストリにオブジェクトをどのようにバインドしますか?いくつかのコードやスタックトレースは素晴らしいでしょう。ルックアップ時間がafaikに関係する限り、それはWindowsとUnix OSで異なります。 Unixでは長い時間がかかります。値を変更するには、RMISocketFactoryクラスを拡張します。いくつかのチュートリアルがあります – peshkira

答えて

1

サーバーはリモートルックアップを実行する必要はありません。クライアントはそれを行います。

クライアントがConnectExceptionsを投げて、「localhost」に接続しようとしていないときに接続しようとしている場合は、RMI FAQのアイテムA.1を参照してください。

関連する問題