java.net.SocketException: Socket geschlossene TCP-Client-Server-Kommunikation
Ich erstelle eine Java-Client / Server-Anwendung über TCP, wobei wir zwei Sockets haben:
Eine ist für den Austausch von Nachrichten.Zwei ist für die Dateiübertragung.Ich habe im Server zwei ServerSockets angelegt, um Socket One und Two anzulegen
durch Akzeptieren der ServerSockets.
Zunächst sendet der Client einige Bytes über den ersten Socket
damit er dem Server mitteilen kann, welche Datei er benötigt.
Dann sendet der Server über den zweiten Socket die Datei an den Client.
Nachdem der Client die Datei empfangen hat, versucht er, eine Meldung "Transfer Done" an den Server zurückzusenden.
Dort bekomme ich die Ausnahme für die geschlossene Steckdose.
Allerdings schließe ich die Steckdose bisher nie.
Ich schließe nur den Puffer, der die Datei sendet.
Selbst wenn ich versuche, den socketInputStream nach dem Senden der Datei erneut zu öffnen, ist der Fehler immer noch derselbe.
Auch wenn ich den Puffer, der die Datei sendet, nicht schließe, erhält der Client die Datei nicht.
Server-Ausnahme
Fehler in der Rückmeldung - java.net.SocketException: Socket geschlossen
Client-Ausnahme
Serverantwort - java.net.SocketException: Software verursachte Verbindungsabbruch: Socket-Schreibfehler
Was mache ich falsch?