Server - Klient - server nie czyta

0

Nie mam pojęcia co robię źle..

SERVER

public class Server {

    public static void main(String args[]) throws IOException, InterruptedException
    {
        ServerSocket serverSocket = new ServerSocket(3001);
        Socket socket = serverSocket.accept();  

        System.out.println("+ 1");

        BufferedReader bufferedReader = new BufferedReader
                (new InputStreamReader(socket.getInputStream()));

        while(true)
        {
            String message = bufferedReader.readLine();
            System.out.println(message);
        }   
    }
}

KLIENT

public class Client {

    public static void main(String args[]) throws UnknownHostException, IOException {

        Socket socket = new Socket("localhost", 3001);

        System.out.println("Connected");

        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        DataOutputStream outputStream = new DataOutputStream(socket.getOutputStream());

        while(true)
        {
            String message = reader.readLine();
            outputStream.writeChars(message);
        }

    }
    }

Powinno być tak, że klient pisze, server czyta, a problem w tym, że server nic nie wypisuje.

0

wygląda, że wszystko ok

0

To dlaczego nie działa ?

0

Nie działa, ponieważ po stronie serwera korzystasz z buforowanego wejścia, natomiast readLine() którego używasz by odczytać wiadomość z terminala obcina znak końca linii, na który to czeka readLine() po stronie serwera.

0

Hmm, więc czym to będzie najlepiej zastąpić ?

0

Poradziłem sobie. Użyłem ObjectOutputStream oraz ObjectInputStream. Dzięki za pomoc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0