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

Langage Java Discussion :

Probleme de déserialisation d'objets


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 59
    Par défaut Probleme de déserialisation d'objets [RESOLU]
    Bonjour,

    J'aurai une question concernant la deserialisation d'un objet
    J'ai une classe qui contient un champ qui n'a pas été charge par le classloader de la JVM mais par mon propre classloader.

    La sérialisation de cet objet se passe bien, mais c'est lors de la deserialisation
    souleve l'exeption ClassNotFoundException.

    N'existe pas une solution en redefissant dans la classe la méthode readObject pour lui permettre de spécifier le classloader ou il sera possible de trouver la classe.

    Je vous remercie par avance pour votre aide

  2. #2
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 59
    Par défaut
    up
    Personne a une idée ??

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 132
    Par défaut
    Si c'est largement possible.
    il suffit que ta classe implemente l'interface serializable et redefinisse les fonctions

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      private void writeObject(java.io.ObjectOutputStream out)
          throws IOException
     private void readObject(java.io.ObjectInputStream in)
          throws IOException, ClassNotFoundException;
      private void readObjectNoData() 
          throws ObjectStreamException;
    Tu marques ton champ comme transient et ensuite dans la methode
    writeObject tu serializes ton object et toutes les infos relatives a ton champ.
    par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    private void writeObject(java.io.ObjectOutputStream out)
          throws IOException{
    //Object serialize sauf les champs transients
    out.writeObject(result);
    //On stocke les infos necessaire a la construction plus tard de l'object
    out.writeLong(field.getId());
    out.writeString (field.getName ());
    ...
    }
    Maintenant il suffit de faire l'operation inverse dans la fonction readObject
    et tu utilises ton classloader pour creer une nouvelle instance de l'object que tu veux comme champs de ta classe.

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Peut-être que ce tutoriel pourra t'apporter des éléments de réponse : La sérialisation binaire en Java .
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème Corba retourner un objet
    Par stephane92400 dans le forum Général Java
    Réponses: 17
    Dernier message: 07/06/2006, 09h37
  2. probleme de creation d'objet cristal report
    Par sam_12_3 dans le forum SAP Crystal Reports
    Réponses: 8
    Dernier message: 03/04/2006, 13h58
  3. [3D] Probléme de jointure entre objet sous 3DSMAX
    Par astragoth dans le forum Développement 2D, 3D et Jeux
    Réponses: 2
    Dernier message: 11/02/2006, 01h15
  4. Problème d'éclairage d'objet superposé
    Par yuriashford dans le forum OpenGL
    Réponses: 5
    Dernier message: 10/02/2006, 09h57
  5. Réponses: 3
    Dernier message: 08/09/2005, 10h45

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