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 :

unmarshalling avec xml et jaxb


Sujet :

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

  1. #1
    Membre du Club
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 110
    Points : 55
    Points
    55
    Par défaut unmarshalling avec xml et jaxb
    S'il vous plait j'ai par exemple ce shema xml comme ca


    Code XML : 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
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                xmlns:ols="http://www.klsoptom.com/safae"
                elementFormDefault="qualified"
                attributeFormDefault="qualified">
     
     
      <xsd:element name="smallXmlTest">
        <xsd:complexType>
          <xsd:sequence>
    				<xsd:element name="sites" type="OptimSitesType" />
    	    </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
     
    	<!-- Sites -->
    	<xsd:complexType name="OptimSitesType">
    		<xsd:sequence>
    			<xsd:element name="site" type="OptimSiteType" minOccurs="0" maxOccurs="unbounded"/>
    		</xsd:sequence>
    	</xsd:complexType>
     
    		<xsd:complexType name="OptimSiteType">
    		<xsd:sequence>
    			<xsd:element name="id" type="xsd:int" default="0"/>
    			<xsd:element name="reference" type="xsd:string" default="site"/>
    			<xsd:element name="description" type="xsd:string" default="site"/>
    		</xsd:sequence>
    	</xsd:complexType>
     
    </xsd:schema>



    comment on peut unmarshallig apartir de cette shema je le trouve que c'est compliqué pour moi

  2. #2
    Membre du Club Avatar de NRLinker
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2012
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2012
    Messages : 44
    Points : 55
    Points
    55
    Par défaut
    Ce bout de code explique comment faire le unmarshaling en utilisant JAXB



    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
     
    public class UnmarshallingDemo {
     
        public static void main (String [] args) {
            try {
                JAXBContext jc = JAXBContext.newInstance ("generated");
     
                Unmarshaller u = jc.createUnmarshaller ();
     
               File f = new File ("item.xml");
               JAXBElement element = (JAXBElement) u.unmarshal (f);
     
               Item item = (Item) element.getValue ();
               System.out.println (item.getCode ());
               System.out.println (item.getName ());
               System.out.println (item.getPrice ());
           } catch (JAXBException e) {
               e.printStackTrace ();
           }
       }
    }
     
     
    <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:element name="item" type="Item"/>
        <xsd:complexType name="Item">
            <xsd:sequence>
                <xsd:element name="code" type="xsd:string"/>
                <xsd:element name="name" type="xsd:string"/>
                <xsd:element name="price" type="xsd:double"/>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:schema>

  3. #3
    Membre du Club
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 110
    Points : 55
    Points
    55
    Par défaut
    Merci de m'avoir repondu j'ai deja vu des exemples je l'ai compris mais je trouve mon shema un peu compliqué c'est diferente totalement de ca car

    dans la liste OptimSitesType il ya OptimSiteType comme 2 pointeurs ,

    Est ce que vous pouvez me donnez ue idée s'il vous plait

  4. #4
    Membre du Club
    Femme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2011
    Messages : 110
    Points : 55
    Points
    55
    Par défaut
    tu peu dire j'ai reussi de faire ca comme exemple mais avec la derniere partie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    	try {
    			  JAXBContext jc = JAXBContext.newInstance( "smallXmlTest" );
    	            Unmarshaller u = jc.createUnmarshaller();
    		        File f = new File("C:/APPS/XML/smallXmlTest.xml");
    		        JAXBElement element = (JAXBElement)u.unmarshal(f);
    	            OptimSiteType optim = (OptimSiteType) element.getValue();
    	            System.out.println(optim.getId());
    	            System.out.println(optim.getReference());
    	            System.out.println(optim.getDescription());
    		} catch (Exception e) {
    			// TODO: handle exception
    		}

Discussions similaires

  1. [JAXB] Problème pour unmarshaller avec une interface
    Par kase74 dans le forum Persistance des données
    Réponses: 4
    Dernier message: 14/01/2013, 18h40
  2. JAXB unmarshalling avec des commentaires
    Par mackbolan dans le forum Persistance des données
    Réponses: 0
    Dernier message: 04/08/2010, 17h57
  3. JAXB,unmarshalling avec un parseur dom
    Par riadhhwajdii dans le forum Persistance des données
    Réponses: 3
    Dernier message: 03/08/2010, 17h03
  4. Comment réaliser des modèles de documentations avec XML ?
    Par Dams76 dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 29/08/2003, 03h15
  5. Tree View avec XML et XSL
    Par Drooxy dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 22/04/2003, 11h21

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