tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
2943
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    undertaker undertaker ist offline Mitglied Silber
    Registriert seit
    Nov 2003
    Ort
    Liebenfels
    Beiträge
    90
    Hallo! Habe folgendes Problem
    Will mit Java über SSLSocket zuerst Objekte mit Steuerinformationen (String etc), dann eine oder mehrere Dateien und dann noch einige Objekte Übertragen.

    Habe aber folgendes Problem:
    Ich sende die Startinformationen mit einem ObjectOutputStream.
    Dann sende Ich die Datei mit einem DataOutputStream.
    Beide verwendet aber den Selben OutputStream vom Socket.

    Das Problem habe ich nun am Server:
    Ich les die Datei so ein :
    Code :
    1
    2
    3
    4
    5
    6
    
                    byte[] bytes = new byte[1024];
                    int b = di.read(bytes);
                    while (b!=-1){
                        fos.write(bytes,0,b); //In datei schreiben
                        b = di.read(bytes); 
                    }

    Wenn aber der DataOutputStream im Client nicht beendet wird, dann wartet der di.read(bytes) so lange, bis noch etwas nachkommt.
    Schliße ich den DataOutputStream im Client, schließe ich gleichzeitig den Socket und kann somit keine weiteren Daten in dieser "Session" mehr senden.
    Kennt jemand eine Lösung bzw. kann es sein das ich das Problem am falschen Ort sehe?
    mfg trauter
     
    Nur tote Fische schwimmen mit dem Strom

  2. #2
    Avatar von zeja
    zeja zeja ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2006
    Beiträge
    2.962
    Also ich würde es so machen:

    <someData>
    <startFile>
    <fileData>
    <endFile>
    <someData>

    Sprich eine Markierung senden wo eine Datei beginnt und wo sie endet. Du musst dann ein empfangenes byte array entsprechend auswerten um die Markierung zu erkennen. Dann weisst du wo deine Datei anfängt und wo sie endet.
     

  3. #3
    undertaker undertaker ist offline Mitglied Silber
    Registriert seit
    Nov 2003
    Ort
    Liebenfels
    Beiträge
    90
    joa danke hatte gestern anscheinend ne denkblokade ist mir heute in der Nacht auch eingefallen .)
     
    Nur tote Fische schwimmen mit dem Strom

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 25.09.10, 16:54
  2. Komplexe Objekte mit Webservice übertragen
    Von Alex08 im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 0
    Letzter Beitrag: 25.06.09, 15:14
  3. Objekte in XML speichern und von Java aufrufen
    Von zoidberger im Forum Java
    Antworten: 22
    Letzter Beitrag: 27.07.07, 07:57
  4. Java Objekte in Datenbank schreiben
    Von zeroize im Forum Java
    Antworten: 8
    Letzter Beitrag: 22.05.07, 15:27
  5. Objekte selektieren und Objekte einfärben
    Von wal im Forum Cinema 4D
    Antworten: 4
    Letzter Beitrag: 09.02.04, 18:00