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

Entrée/Sortie Java Discussion :

Unmarshal attribute with JAXB


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Janvier 2006
    Messages : 194
    Par défaut Unmarshal attribute with JAXB
    Bonjour,

    Je suis entrain de tester JAXB (sdk6), j'ai eu des problème d'Unmarshalling des attributes.

    Mes objets sont :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlRootElement(name = "contents")
    public class Content implements Serializable {
     
        @XmlElement(name = "published-content", required = true)
        protected ArrayList<ContentElement> publishedContents;
     
     
     
        @XmlElement(name = "unpublished-content", required = true)
        protected ArrayList<ContentElement> unpublishedContents;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlRootElement
    public class ContentElement implements Serializable {
     
        @XmlElement(name = "data", required = true)
        protected String data;
     
        @XmlElement(name = "link", required = true)
        protected ArrayList<Link> links;
     
        @XmlAttribute (name = "targetss", required = true)
        protected String targetss;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    @XmlAccessorType(XmlAccessType.FIELD)
    @XmlRootElement(name = "link")
    public class Link implements Serializable {
     
        @XmlElement(name = "type", required = true)
        protected String type;
     
        @XmlElement(name = "title", required = true)
        protected String title;
     
        @XmlElement(name = "targetPath", required = true)
        protected String targetPath;
    }
    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
    La méthode que j'utilise pour récupérer targetss est la suivante
    
       public static void unmarshal() {
            try {
                FileInputStream is = new FileInputStream("ContentType.xml");
                JAXBContext importContext = JAXBContext.newInstance(Content.class);
                Unmarshaller unmarshaller = importContext.createUnmarshaller();
                Content content = (Content) unmarshaller.unmarshal(is);
                ContentElement contentElement = content.getPublishedContents().get(0);
               
                System.out.println(contentElement.getTargetss());
    
            } catch (Exception E) {
                E.printStackTrace();
            }
        }
    Mais j'ai toujours un null, par contre lorsque je fais un marshalling cet attribute est bien renseigné

    Voici le fichier xml que j’utilise :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <contents>
    	<published-content targetss="should not null" >
    		<data >data</data>
    		<link >
    			<type>type</type>
    			<title>title</title>
    			<targetPath>myTarget</targetPath>
    		</link>
    	</published-content>
    </contents>

    Merci d'avance

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Janvier 2006
    Messages : 194
    Par défaut
    En fait il faut modifier les annotations, il faut les placers sur les méthodes.
    Je sais pas pourquoi

Discussions similaires

  1. @OrderBy with nested attributes
    Par odaxis dans le forum JPA
    Réponses: 0
    Dernier message: 23/07/2009, 17h46
  2. [JAXB] Parser un attribut d'élément
    Par BiM dans le forum Persistance des données
    Réponses: 3
    Dernier message: 06/05/2009, 14h33
  3. [JAXB]xjc et javadoc des attributs
    Par brasinamical dans le forum Persistance des données
    Réponses: 0
    Dernier message: 01/12/2008, 11h18
  4. [JAXB 2.0] customization attribute
    Par noOneIsInnocent dans le forum Persistance des données
    Réponses: 1
    Dernier message: 26/06/2008, 10h06
  5. Largeur d'un tableau avec l'attribut width, min-with
    Par weed dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 08/06/2006, 08h42

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