Gå til innhold

Sende objekter over Socket


Anbefalte innlegg

Jeg har en ArrayList med flere egendefinerte objekter. Denne arraylisten har jeg lyst å sende over til en server via Socket. Jeg har koplet til serveren, hentet ut input- outputstream, og sendt enkle byte arrays frem og tilbake vha disse, så kommunikasjonen er der.

 

Men det jeg nå ønsker er altså å sende denne lista med objekter fra egendefinert klasser. Jeg har forsøkt å bruke ObjectOuputStream.writeObject(), men får problemer på serversiden med ObjectInputStream.readObject(), som sier at

"java.io.StreamCorruptedException: Invalid stream magic number"

 

Serversiden er tenkt å bare være en midlertidig lagringsstasjon, slik at listen med objekter jeg leser inn vha readObject blir castet som Object.

 

Hva i alle dager kan være problemet?

Lenke til kommentar
Videoannonse
Annonse

Sjekk følgende:

 

1) Har du samme java versjoner på klient og server ?

 

2) Buffrer du opp input før du sender det til ObjectInputStream? Dersom ikke prøv å lese hele stream'en inn i et temp-buffer før du sender det til ObjectInputStream.

 

3) Finnes de egendefinerte klassene på serveren ?

Endret av Illus
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...