Connection reset by peer: socket write error

Diskutiere Connection reset by peer: socket write error im Netzwerkprogrammierung Forum; Ich habe bei folgenden den Error: java.net.SocketException: Connection reset by peer: socket write error at...

  1. Fabian321
    Fabian321 Neues Mitglied
    Ich habe bei folgenden den Error:
    Code (Java):

    java.net.SocketException: Connection reset by peer: socket write error
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(Unknown Source)
        at java.net.SocketOutputStream.write(Unknown Source)
        at java.nio.file.Files.copy(Unknown Source)
        at java.nio.file.Files.copy(Unknown Source)
        at x46.Server.Server_in.run(Server_in.java:59)
        at java.lang.Thread.run(Unknown Source)
     
    Mein Client (senden der Datei):
    Code (Java):
     
    Socket client = new Socket("localhost", 16102);
            // strems
            // out
            OutputStream outStream = client.getOutputStream();
            PrintWriter out = new PrintWriter(outStream);
     
            // in
            InputStream inStream = client.getInputStream();
            BufferedReader in = new BufferedReader(new InputStreamReader(inStream));
         
            // -------------------------------------------------------
         
            File file = new File("send.zip");
            // init array with file length
            byte[] bytesArray = new byte[(int) file.length()];
              FileInputStream fis = new FileInputStream(file);
              fis.read(bytesArray); //read file into bytes[]
              fis.close();
     
              outStream.write(bytesArray);
              outStream.flush();
           
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
     
    Server(empfängt die Datei):
    Code (Java):

     
            try {
                ExecutorService executor = Executors.newFixedThreadPool(2);
                // server starten
                ServerSocket server01 = new ServerSocket(16102);
                System.out.println("Warte auf clients auf dem Port " + server01.getLocalPort());
                // --------------------------------------------------------------
                while (true) {
                    // connection aktiviren
                    Socket connection = server01.accept();
                    System.out.println("Client verbingung unter: " + connection.getRemoteSocketAddress());
                    // -------------------------------------------------------------------
                    // strems
                    // out
                    OutputStream outStream = connection.getOutputStream();
                    PrintWriter out = new PrintWriter(outStream);
                    ObjectOutputStream oos = new ObjectOutputStream(outStream);
                    // in
                    InputStream inStream = connection.getInputStream();
                    BufferedReader in = new BufferedReader(new InputStreamReader(inStream));
                    // ------------------------------------------------------------
                    // Path path = Paths.get("test.zip");
                    File f = new File("test.zip");
                    Files.copy(f.toPath(), outStream);
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
     
    (das Programm ist um eine zip Datei zu verschicken)
    Also woher kommt der Error?
     
    Zuletzt bearbeitet: 5. Dez. 2018
  2. Vielleicht hilft dir dieses Training hier weiter.
  3. mihe7
    mihe7 Bekanntes Mitglied
    Für den Empfang bietet es sich für gewöhnlich an, auch etwas zu lesen...

    Du musst serverseitig den inStream auch verwenden. Und die ganzen Writer/Reader-Geschichten schmeißt Du am besten ganz raus: Du verschickst eine Zip-Datei, also binäre Daten und keine Zeichenketten.
     
  4. Fabian321
    Fabian321 Neues Mitglied
    aber ich hab ja den Fehler in der Zeile:
    Files.copy(f.toPath(), outStream);

    und wie kann ich das machen bz was muss ich dafür machen
     
  5. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Wie im anderen Thread gesagt: nimm für den Client auch die Files-Variante, bei mir läuft es damit problemlos.
     
  6. Fabian321
    Fabian321 Neues Mitglied
    kannst du mir bitte die bearbeitete stelle schicken ich verstehe nicht wie du das meinst ?
     
  7. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Dieses hier: Files.copy(file.toPath(), outStream), statt dem händischem Einlesen und Senden der Datei.
     
  8. Fabian321
    Fabian321 Neues Mitglied
    Danke an alle hab es gelöst
     
  9. Wenn du Java lernen möchtest, empfehlen wir dir dieses Online-Training hier
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Connection reset by peer: socket write error - Ähnliche Themen

LibGdx SocketExeption: Connection reset
LibGdx SocketExeption: Connection reset im Forum Spiele- und Multimedia-Programmierung
Probleme mit Connection Reset bei Telnet Verbindung
Probleme mit Connection Reset bei Telnet Verbindung im Forum Netzwerkprogrammierung
Connection reset, wieso?
Connection reset, wieso? im Forum Java Basics - Anfänger-Themen
InputStream readObject > Connection Reset
InputStream readObject > Connection Reset im Forum Netzwerkprogrammierung
Socket absichtlich so schließen, dass Gegenseite java.net.SocketException: Connection reset wirft
Socket absichtlich so schließen, dass Gegenseite java.net.SocketException: Connection reset wirft im Forum Netzwerkprogrammierung
Thema: Connection reset by peer: socket write error