2016-04-28 13 views
-2

私のClientListenerに問題があります。サーバはTCPパッケージを送信しますが、クライアントはそれを表示しません。ここで TCP Javaチャット、クライアントが聞いていません

は私のコードです

https://github.com/Behoston/sieci/tree/master/src/tcp

(サーバはそれぞれの新しいクライアントと、このスレッド(聞く)と(それが動作メッセージを送信する他のこのスレッドの実行のための新しいスレッドを実行します - 私は内のメッセージを見ることができますwireshark クライアントは主なスレッドを実行し、2番目のtherad(正常に動作していない)を入力してセブレーターからメッセージを聞くことができます。

答えて

0

リポジトリへのリンクのみを提供すれば重要なクラスやメソッドは、hel pful。

あなたが提供されているクラスの私の理解が正しければ、これはあなたが(私が間違っているなら、私を修正)を実現しようとしているワークフローです:

  1. Serverが
  2. クライアントが
  3. を接続を開始します
  4. サーバー(クライアント側に表示取得されていない)ウェルカムメッセージを送信します。

    DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream()); 
        outToClient.writeBytes("Hello, your ID is: " + clientId + "; To send message please use 3 first chars to set target"); 
    
recieving側で

:私の知る限り見るように

BufferedReader inFromServer = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())); 
      response = inFromServer.readLine(); 

、あなたのサーバがBYTEARRAYを送信してのreadLine()を待っています。 readLine()は、ラインセパレータ(f。 "\ n")を待つので、メッセージは処理できません。

関連する問題