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

Format d'échange (XML, JSON...) Java Discussion :

désérialisation a l'aide


Sujet :

Format d'échange (XML, JSON...) Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2011
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 27
    Par défaut désérialisation a l'aide
    Bonjour voilà je veux effectuer l'opération de desérialisation (Unmashalling mon schéma est valide ....enfin je crois lorsque j'exécute l'opération j'ai le message suivant qui s'affiche


    java.lang.ClassCastException: javax.xml.bind.JAXBElement cannot be cast to Theme.REGLE
    at Theme.Unmarshalling.main(Unmarshalling.java:26) (Texte en rouge :p)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    package Theme
    
        import javax.xml.bind.*;
        import java.io.*;
        import javax.xml.bind.annotation.XmlAccessType;
        import javax.xml.bind.annotation.XmlAccessorType;
        import javax.xml.bind.annotation.XmlAttribute;
        import javax.xml.bind.annotation.XmlElement;
        import javax.xml.bind.annotation.XmlType;
        import java.util.*;
    
    
        public class Unmarshalling {
        public static void main(String[] args) {
    
       try {
    
        JAXBContext context;
    
        context = JAXBContext.newInstance("Theme");
    
        Unmarshaller unmarshaller;
    
        unmarshaller = context.createUnmarshaller();
    
        REGLE Regle ;
    
        Regle = (REGLE) unmarshaller.unmarshal(new File("Untitled2.xml"));
    
        System.out.println("ECA ");
    
        System.out.println("Nom : " + Regle.getNomRegle());
        System.out.println("Prenom : " + Regle.getCouplage());
        System.out.println("Numero : " + Regle.getAct());
        System.out.println("E-mail : " + Regle.getCond());
        System.out.println("E-mail : " + Regle.getEvents());
        System.out.println();
       
    }
        catch (Exception e) {
        e.printStackTrace();
       
    }
        }
        }
    svp es-que vous pouvez m'indiquer de quel erreur il s'agit et ce que je dois faire pour y remedier

  2. #2
    Membre expérimenté Avatar de Mamypirate
    Homme Profil pro
    Samouraï
    Inscrit en
    Mai 2011
    Messages
    108
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Samouraï
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2011
    Messages : 108
    Par défaut
    L'opération d'Unmashalling retourne un objet de type javax.xml.bind.JAXBElement qui ne peut (visiblement) pas être casté en REGLE.

    Voici la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JAXBElement<REGLE> jaxbRegle = (JAXBElement<REGLE>) unmarshaller.unmarshal(new File("Untitled2.xml"));
    JAXBElement est une représentation d'un élément xml.
    Pour récupérer l'objet correspondant, il suffit de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    REGLE regle = jaxbRegle.getValue();

Discussions similaires

  1. Aide en ligne
    Par étoile dans le forum Composants VCL
    Réponses: 2
    Dernier message: 07/08/2002, 14h00
  2. Ajouter une aide
    Par Mailgifson dans le forum C++Builder
    Réponses: 5
    Dernier message: 12/06/2002, 13h32
  3. Besoin d'aide pour l'I.A. d'un puissance 4
    Par Anonymous dans le forum C
    Réponses: 2
    Dernier message: 25/04/2002, 17h05
  4. Une petite aide pour les API ?
    Par Yop dans le forum Windows
    Réponses: 2
    Dernier message: 04/04/2002, 21h45

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