Я написал EchoServer, который отвечает String ack, если данные были отправлены соответствующим образом.
Мой клиент выглядит так... Чтобы получить ответ подтверждения от сервера, «echoSocket» помещает полученные данные в мой ObjectInputStream. Только если я прокомментирую эти части, клиент работает
echoSocket = new Socket(server_name, tcp_port);
System.out.println(" *** Connected to " + server_name + " ***");
System.out.println("Press Enter to send your message.");
out = new ObjectOutputStream(echoSocket.getOutputStream());
in = new ObjectInputStream(echoSocket.getInputStream());
out.flush();
String message = System.console().readLine();
while(!message.equals("quit")) {
// problem
if (in.readObject().equals(ack))
System.out.println("ACKed");
in.close();
// problem ends
out.flush();
out.writeObject(message);
System.out.println("Sending: " + message);
message = System.console().readLine();
out.flush();
}
Кто-нибудь знает, почему он не отправляет мои строки?
Спасибо, Мариус