0
私は実行しようとすると、私は "java.net.SocketException:接続リセット"を取得している単純なクライアント/サーバーprogram.Butを実行しようとしています。なぜこの例外が発生するのですか?私のための任意の提案?ここjava.net.SocketExceptionの取得:接続のリセット
コード
SocServer.java
public static void main(String[] args) throws Exception
{
System.out.println("Server is started");
ServerSocket ss = new ServerSocket(8886);
System.out.println("Server is waiting for client request");
Socket s = ss.accept();
System.out.println("Client Connected");
BufferedReader br = new BufferedReader(new InputStreamReader(s.getInputStream()));
String str = br.readLine();
System.out.println("Client Data" + str);
}
SocketClient.java
public static void main(String[] args) throws Exception
{
String ip = "localhost";
int port = 8886;
Socket s = new Socket(ip,port);
String str = "Noman";
OutputStreamWriter os = new OutputStreamWriter(s.getOutputStream());
PrintWriter out = new PrintWriter(os);
os.write(str);
os.flush();
}
2つのこと:1)すべてのデータが存在し、1SocServer.javaの 'readLine'で処理されていると仮定しています.2)ストリームのいずれも決して閉じません。これを見直してください:http://stackoverflow.com/questions/62929/java-net-socketexception-connection-reset?rq=1 –
リスナーがブロック解除を期待している間は、改行を送信しません。完全に使用されていないPrintWriterの外(私はそれを使用することをお勧めしません。始めに 'String str =" Noman \ n "'を試してみましょう – Fildor