ソケット:書き出しをソケット経由で読み込みできない
お世話になります。
今、Javaでのソケットプログラミングについて学習をはじめて、はじめてのサンプルプログラムが失敗しました。
そこでもうちょっと簡単にしてみたのですが(一部の抜粋が以下のソースです)、またまたうまくいきません。
エコーサーバのテストなのですが、client : after send messageと表示されたところで処理が止まってしまいます。
結果は最下位に貼り付けてあります。
どうかよろしくお願いします。
// reader/writerの取得
BufferedWriter clientWriter = new BufferedWriter(
new OutputStreamWriter(sockClient.getOutputStream()), BUFFERSIZE);
BufferedReader clientReader = new BufferedReader(
new InputStreamReader(sockClient.getInputStream()), BUFFERSIZE);
BufferedWriter serverWriter = new BufferedWriter(
new OutputStreamWriter(sockServer.getOutputStream()), BUFFERSIZE);
BufferedReader serverReader = new BufferedReader(
new InputStreamReader(sockServer.getInputStream()), BUFFERSIZE);
// サーバのローカルとクライアントの接続先が同じことの確認
System.out.println("client port : " + sockClient.getPort());
System.out.println("client addr : " +
sockClient.getInetAddress().getHostAddress());
System.out.println("server port : " + sockServer.getLocalPort());
System.out.println("server addr : " +
sockServer.getLocalAddress().getHostAddress());
// クライアント→サーバー→クライアントの順にmaaaaaいうえおを送信
String strMessage = "maaaaaいうえお";
System.out.println("client : send message : " + strMessage);
clientWriter.write(strMessage);
System.out.println("client : after send message");
String msgGet = serverReader.readLine();
System.out.println("server : got : " + msgGet);
serverWriter.write(msgGet);
System.out.println("client : got : " + clientReader.readLine());
------------以下が結果-------------
client port : 4544
client addr : 127.0.0.1
server port : 4544
server addr : 127.0.0.1
client : send message : maaaaaいうえお
client : after send message
お礼
担当となって期間が短くサーバやパソコンの知識がなかったため こちらで掲載すれば何とか解決の糸口が見つかるかもと思い投稿 した次第でした。 開発した会社に改めて問い合わせてみます。 ありがとうございます。