IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Sérialisation / Désérialisation


Sujet :

avec Java

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 228
    Points : 80
    Points
    80
    Par défaut Sérialisation / Désérialisation
    java.io.NotSerializableException: java.awt.image.BufferedImage
    Ceci est l'exception levé lors de ma serialisation de ma classe Playlist.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class PlayList extends JList<String> {
        private transient ArrayList <File>list; 
        private transient Vector <String>v = new Vector<>();
        private transient String name="";
        public PlayList(String na){
            this.setBackground(Color.red);
        list = new ArrayList<>();
        name = na;
        }
    Le mot clé transient sert a ne pas serialiser l'object en question. Je voulais voir quel objet ne se serialisait pas, et cela ne vient pas de mes objets internes.
    Ma jlist est associé un à jscrollpane et à un vecteur.
    Je n'ai as mis d'implements serializable car ma playlist extends JList, qui l'implemente.

    L'image est dans une classe boutton. Je ne comprend pas en quoi elle interragit avec celle-ci. Ma classe Fenetre contient different pannnels qui contiennent des boutons, sauf le panel principal qui contient un scrollpane. Merci de bien vouloir m'éclairer, je ne vois pas d'où vient le problème.

    EDIT 1 : En mettant le code dans un projet, tout se serialise à merveille... Est ce que je dois rajouter implements serializable à toutes mes classe ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public static void Serialiser(PlayList pl, File aSerial){
            try{
                FileOutputStream output ;
                output = new FileOutputStream(aSerial);
                ObjectOutputStream oos = new ObjectOutputStream(output);
                oos.writeObject(pl);
                oos.flush();
                oos.close();
            }catch (java.io.IOException e){
                e.printStackTrace();
            }
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     public static PlayList Deserialiser(File aDeserialiser){
            PlayList deserialise = null ;
            try{
            FileInputStream inputS = new FileInputStream(aDeserialiser);
            ObjectInputStream ois = new ObjectInputStream(inputS);
            deserialise = (PlayList) ois.readObject();
            }catch ( java.io.IOException | ClassNotFoundException e) {
                e.printStackTrace();
            }
        return deserialise;
        }
    EDIT 2 : voici le code de deserialisation/serialisation

  2. #2
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut
    Il faut que toutes les classes rattaché soient sérializable, donc oui rajoute implements serializable ou c'est nécessaire.

Discussions similaires

  1. [XStream] Sérialisation/Désérialisation de Dates
    Par bigjacky31 dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 12/01/2010, 16h28
  2. Problème de sérialisation / désérialisation
    Par angedejupiter dans le forum C#
    Réponses: 1
    Dernier message: 07/09/2009, 10h18
  3. sérialiser/désérialiser une Hashtable : pb de cast(?)
    Par zouzoute dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 02/02/2008, 15h22
  4. sérialisation désérialisation
    Par hug dans le forum Langage
    Réponses: 2
    Dernier message: 16/01/2006, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo