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 :

XML Node JDOM


Sujet :

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

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Intégrateur / Programmeur AS2
    Inscrit en
    Avril 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Intégrateur / Programmeur AS2
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2004
    Messages : 43
    Points : 30
    Points
    30
    Par défaut XML Node JDOM
    Bonjour,

    Je souhaite retourner en "response" via un servlet une partie d'un XML. Voici un peu plus d'explication.

    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
        	String targetId = request.getParameter("id");
        	SAXBuilder sxb = new SAXBuilder();
     
    		try{
    			document = sxb.build(new File("E:\\patients.xml"));
    			racine = document.getRootElement();
     
    			List listPatient = racine.getChildren("patient");
    			Iterator i = listPatient.iterator();
     
     
    			while(i.hasNext()) {
    				Element courant = (Element)i.next();
    				String valeur = courant.getChild("id").getText();
    				if (valeur.compareTo(targetId)==0) {****J'ai besoin d'aide ici***}
    Donc dans ma condition, je vourais prendre tous les noeuds qui se retrouvent sous le parent "patient". Celui-ci inclu l'enfant "id", qui est égale au id passer en parametre au servlet, et plusieurs autres.

    Enfin je voudrait si c'est possible que ce soit une string.

    Merci beaucoup

    Quidam66


    [Modéré par Didier] : ajout de tag dans le titre - Les règles du forum Java

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 274
    Points : 307
    Points
    307
    Par défaut
    Bonjour,

    il faudrait la structure (extrait) de ton fichier xml (patients.xml) pour pouvoir t'aider.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Intégrateur / Programmeur AS2
    Inscrit en
    Avril 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Intégrateur / Programmeur AS2
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2004
    Messages : 43
    Points : 30
    Points
    30
    Par défaut
    OUPS!

    voici un portrait de mon XML

    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <patients>
    	<patient>
    		<id>76234</id>
    		<firstname>XXXX</firstname>
    		<lastname>YYYYY</lastname>
    ...
    	</patient>
    	<patient>
    		<id>21345</id>
    		<firstname>AAAAA</firstname>
    		<lastname>BBBBBB</lastname>
    ...
    	</patient>
    </patients>
    et voilà merci encore

    Quidam66

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Intégrateur / Programmeur AS2
    Inscrit en
    Avril 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Intégrateur / Programmeur AS2
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2004
    Messages : 43
    Points : 30
    Points
    30
    Par défaut
    Non mais qu'est-ce qui se passe? Je pose une question trop complexe? Nan je ne crois pas ça!

    Allez, s'il vous plait, un peu d'aide serait très apprécié.

    quidam66

  5. #5
    Membre actif Avatar de austin P.
    Inscrit en
    Juin 2004
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Juin 2004
    Messages : 182
    Points : 239
    Points
    239
    Par défaut
    quidam66 je veux pas te faire de la peine mais là tu viens de te griller...

    n'oublie pas que les participants de ce forum sont des bénévoles et non des fournisseurs de solutions gratos...

    enfin si les personnes ne répondent pas c'est peut être que ta question est mal posée. Tu m'excuses mais

    Celui-ci inclu l'enfant "id", qui est égale au id passer en parametre au servlet, et plusieurs autres.
    j'y comprend rien

  6. #6
    Nouveau membre du Club
    Inscrit en
    Septembre 2005
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 24
    Points : 26
    Points
    26
    Par défaut
    effectivement, c'est pas très clair ce que tu veux.

    Un peu de détail ...

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Intégrateur / Programmeur AS2
    Inscrit en
    Avril 2004
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Intégrateur / Programmeur AS2
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2004
    Messages : 43
    Points : 30
    Points
    30
    Par défaut
    Ah vous! Cher cousin de l'autre côté de l'Atlantique,

    quidam66 je veux pas te faire de la peine mais là tu viens de te griller...

    Je sais très bien que ce service est tout à fait volontaire et je ne souhaite aucunement vous extorquer quoi que ce soit gratuitement. Je travaille personnellement pour trouver une solution à mon problème, pas 24/24 mais je m'y arrête de temps en temps. Malheureusement je n'y arrive pas puisque débutant et autodidacte en JAVA. Je souhaitais seulement titiller votre sens de l'honneur et votre orgueuil. Je croyais ma question simple mais si vous n'y comprenez rien, pas de problème! Je rectifie mon tir.

    Alors: je souhaite mettre dans une string tous les noeuds enfants du noeud parent "patient". Je trouve le bon noeud "patient" en comparant l'attribut id au paramêtre id qui a été envoyé au servlet.

    Ou encore: Je me positionne dans mon arbre XML sur le bon patient via le id que je reçois en paramêtre dans mon servlet. Le tout en comparant le id reçu au id en attribut du noeud patient. Une fois positionné, je veux enmagasiner dans une string tous les noeuds enfants (sous-arbre) du noeud où je suis positionné.

    Désolé d'avoir été si peu clair et espère maintenant être plus limpide.

    quidam66 from Canada

  8. #8
    Membre actif Avatar de austin P.
    Inscrit en
    Juin 2004
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Juin 2004
    Messages : 182
    Points : 239
    Points
    239
    Par défaut
    Citation Envoyé par quidam66
    Ah vous! Cher cousin de l'autre côté de l'Atlantique,
    tabernacle un cousin
    comment y fait chez ?, nous on a soleil


    Citation Envoyé par quidam66
    Je sais très bien que ce service est tout à fait volontaire et je ne souhaite aucunement vous extorquer quoi que ce soit gratuitement.
    ce n'est pas le coté gratuit qui me gène mais plutôt ca
    Citation Envoyé par quidam66
    Non mais qu'est-ce qui se passe? Je pose une question trop complexe? Nan je ne crois pas ça!
    bref le sujet est clos

    le cousin vas tenter d'aider

    voici 2 méthodes qui extraient des noeuds enfant d'un element XML

    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
     
    public ArrayList getChildElementsByName(Element parentElt, String childName) throws XMLException {
    		if (parentElt == null) {
    			throw new XMLException("parentElt parameter cant be null");
    		}
    		if (childName == null) {
    			throw new XMLException("childName parameter cant be null");
    		}
     
    		ArrayList elements = new ArrayList();
    		NodeList nodes = parentElt.getChildNodes();
    		for (int i = 0; i < nodes.getLength(); i++) {
    			Node node = nodes.item(i);
    			if ((node.getNodeType() == Node.ELEMENT_NODE) && (node.getNodeName().equals(childName))) {
    				elements.add(node);
    			}
    		}
     
    		return elements;
    	}
     
     
     
    public Element getFirstChildElementByName(Element parentElt, String childName) throws XMLException {
    		if (parentElt == null) {
    			throw new XMLException("parentElt parameter cant be null");
    		}
    		if (childName == null) {
    			throw new XMLException("childName parameter cant be null");
    		}
     
    		ArrayList elements = new ArrayList();
    		NodeList nodes = parentElt.getChildNodes();
    		for (int i = 0; i < nodes.getLength(); i++) {
    			Node node = nodes.item(i);
    			if ((node.getNodeType() == Node.ELEMENT_NODE) && (node.getNodeName().equals(childName))) {
    				return node;
    			}
    		}
     
    	}
    donc maintenant admettons que tu ai un objet Document

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Element element = document.getDocumentElement();
    //tu récupère les childs
    Element patients = getFirstChildElementByName(element, "patients");
    ArrayList listPatient = getChildElementsByName(patients, "patient");
    //bon ici tu fais le test sur l'id

Discussions similaires

  1. [JDOM] Création d'un fichier xml avec jdom
    Par fabricew59 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 09/08/2006, 11h17
  2. [JDOM] Validation xml schema & JDOM
    Par helter_skelter dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 22/07/2006, 09h22
  3. Réponses: 3
    Dernier message: 18/05/2006, 23h55
  4. [JDOM] Problème XML et JDOM
    Par edenoyelle dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 20/01/2006, 09h33
  5. [JSP] Parsing XML avec JDOM
    Par benben13 dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 26/08/2005, 17h19

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