hi
hab ein problem mit der netzwerkübertragung von daten.
ich baue eine tcp verbindung mit nem server auf und schicke daten in xml über einen outputStream.
das problem ist das der socket geschlossen wird, wenn ich nur den stream schließen will
den stream muss ich schließen damit der server sieht das nun alles übertragen ist
der socket muss aber offen bleiben weil ich später weitere daten übertragen möchte.
jetzt möchte ich wissen warum der socket durch die anweisung "out.close()" geschlossen wird?
oder mach ich was falsch, wenn ich den stream schließe?
wie kann ich sonst erreichen das der server merkt das nun ein DAtensatz übertragen ist
Danke für hilfe
Monty Burns
hab ein problem mit der netzwerkübertragung von daten.
ich baue eine tcp verbindung mit nem server auf und schicke daten in xml über einen outputStream.
das problem ist das der socket geschlossen wird, wenn ich nur den stream schließen will
Code:
Socket socket = new Socket("localhost",4322);
PrintWriter out = new PrintWriter(socket.getOutputStream());
// hier sende ich was über out
System.out.println("Testausgabe: Ist der Socket geschlossen? (1) " + socket.isClosed() ); //false
out.close();
System.out.println("Testausgabe: Ist der Socket geschlossen? (2) " + socket.isClosed() ); //true
socket.close();
der socket muss aber offen bleiben weil ich später weitere daten übertragen möchte.
jetzt möchte ich wissen warum der socket durch die anweisung "out.close()" geschlossen wird?
oder mach ich was falsch, wenn ich den stream schließe?
wie kann ich sonst erreichen das der server merkt das nun ein DAtensatz übertragen ist
Danke für hilfe
Monty Burns