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

Servlets/JSP Java Discussion :

[JSTL] Evaluer le noeud d'un xml


Sujet :

Servlets/JSP Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 27
    Points : 21
    Points
    21
    Par défaut [JSTL] Evaluer le noeud d'un xml
    Bonjour j'ai un fichier xml ayant la structure suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <racine><div style="margin-left:40px"><objet><div style="margin-left:40px"><id>1</id></div></div><div style="margin-left:40px"></objet>
    <objet><div style="margin-left:40px"><id>2</id></div></objet></div></racine>
    j'aimerais tester la valeur du champ id de chaque objet.
    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <x:forEach var="object"select="$fileXml/racine/objet"><div style="margin-left:40px"><x:if select="$object[id='2']"><div style="margin-left:40px"><c:out value="objet 2 trouvé"/></div></x:if></div></x:forEach>
    Apparemment ma condition if ne fonctionne pas.
    Merci d'avance de votre aide.

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Ce ne serait pas plutot ceci : $object/racine/objet/id[2]

    Cf le tutoriel sur Xpath

    a++

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 29
    Points : 35
    Points
    35
    Par défaut
    Je pense que ce doit être un object[@id='2']

    mais tu dois pouvoir faire directement dans le foreach :
    <x:forEach var="object"select="$fileXml/racine/objet[@id='2']">

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 27
    Points : 21
    Points
    21
    Par défaut
    Justement, je suis pas sûr que objet[@id='2'] fonctionne puisque Id n'est pas un champ d'un noeud mais un noeud à part entière...

    Ce que je veux dire c'est que le noeud objet ne comporte pas de champ id, comme ceci : Un champ et un noeud ne sont pas accessible de la même manière non ? Donc [@id...] ne fonctionne que pour un champ ?! si j'ai bien compris

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 27
    Points : 21
    Points
    21
    Par défaut
    Bon finalement je m'en suis sorti autrement. C'est un peu plus long mais ca fonctionne.

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <%-- Pour chaque objet on contrôle l'identifiant --%>
    <x:forEach var="feuille" select="$fileToParse/racine/objet">    
        <x:set select="$feuille/id" var="identifiant"/>
        <x:if select="$identifiant='2'">
            <c:out value="OK TROUVE"/>
        </x:if>    
    </x:forEach>

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

Discussions similaires

  1. Parcourir les noeuds d'un XML
    Par Maglight dans le forum Delphi
    Réponses: 2
    Dernier message: 17/10/2006, 16h41
  2. Recherche noeud dans document XML
    Par gregcat dans le forum Delphi
    Réponses: 5
    Dernier message: 21/09/2006, 14h10
  3. "comptage" de noeuds dans un xml
    Par lieto dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 28/06/2006, 10h18
  4. Problème noeud vide en XML
    Par Booyakha dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/04/2006, 15h53
  5. [VB.NET][XML] Récupere l'attribut du dernier noeud ds un XML
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 2
    Dernier message: 30/09/2004, 14h14

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