2012-01-12 9 views
0

1つのサーバーと2つ以上のクライアントが接続されているとします。サーバーはObjectOutputStreamオブジェクトを送信したいので、オブジェクトを使用し、getOutputStream()メソッドを使用してサーバーストリーム出力を開きます。サーバーは、特定の方法で設定された1つのフィールドを持つ1つの確定クライアントにのみ、このファイルを送信します。 サーバは、オブジェクトクライアントのすべてのフィールドをリストに保持します。サーバーは、特定の方法でフィールドが設定されているクライアントにのみオブジェクトを送信する必要があります。サーバーはリストを反復し、そのクライアントがオブジェクトを送信した後にクライアントに送信します。ObjectOutputStreamでオブジェクトを1つのクライアントに送信

+0

これは、ソケットとオブジェクトストリームで解決できる問題ではありません。私はJMSを読むことをお勧めします。 – bmargulies

答えて

0

本当にこれを行うには、複数の接続や複数回の往復が必要です。クライアントがサーバーに積極的にステータスを送信する必要があるか、またはサーバーがサーバーに要求する必要があります。または、第3に、サーバーはそれらにすべて同じメッセージを送信することができますが、フラグが含まれているということは、「あなたが「無料」の場合のみ注意を払うことを意味します。

本当に、メッセージキューシステムの使用を学ぶ方がよいでしょう。たとえば、Apache ActiveMQを使用することができます。また、JMS上でSpring/JMSまたはApache CXF Soapを使用することもできます。

1

各クライアントは、変更時にその状態をサーバーに送信するか、オブジェクトをすべてのクライアントに送信し、ステータスがfalseの場合はメッセージを無視させます。

関連する問題