hallo zusammen,
ich bin neu in der netzwerkprogrammierung und versuche einen einfachen server ohne threads zu implementieren. der server soll lauschen bis sich ein client verbindet. der client schreibt text über das netz und wird beim server ausgegeben. das klappt auch so weit. das problem bei meiner methode ist, trennt sich der client kann sich kein neuer client verbinden. anbei mal meine startServer methode:
irgendwie muss ich versuchen in der while schleife zu bleiben und clientSocket = serverSocket.accept(); neu aufzurufen. schreibe ich diese zeile direkt in while schleife gibt der server nur die erste textzeile aus. ich brauche eine abfrage die mir true oder false liefert, wenn sich der client vom server getrennt hat. vielleicht habt ihr ein paar ideen. wäre für hilfe dankbar....
gruß patrick
ich bin neu in der netzwerkprogrammierung und versuche einen einfachen server ohne threads zu implementieren. der server soll lauschen bis sich ein client verbindet. der client schreibt text über das netz und wird beim server ausgegeben. das klappt auch so weit. das problem bei meiner methode ist, trennt sich der client kann sich kein neuer client verbinden. anbei mal meine startServer methode:
Java:
public void startServer() {
System.out.println("Server run on port " + getPort());
boolean loop = true;
try {
serverSocket = new ServerSocket(getPort());
clientSocket = serverSocket.accept();
DataInputStream in = null;
String message = "";
while (loop) {
try {
if (clientSocket.isConnected()) {
in = new DataInputStream(clientSocket.getInputStream());
message = in.readLine();
System.out.println(message);
} else {
in.close();
clientSocket = serverSocket.accept();
}
} catch (IOException e) {
System.out.println(e);
}
}
} catch (IOException e) {
System.out.println(e);
}
}
gruß patrick