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

XML/XSL et SOAP Discussion :

Transformation XSLT for-each


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2009
    Messages : 43
    Par défaut Transformation XSLT for-each
    Bonjour à tous !
    Alors j'ai ce fichier XML avec le nom du scenario et plusieurs erreurs qui s'enchainent :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0" encoding="utf-8"?>
    <LogTest>
      <Scenario>
        <Name>2009-06-22_15-26-22__SQLSERVEUR_Portail</Name>
        <Error>Warning : Error screenshot - 22/06/2009 15:24:40</Error>
        <Error>...</Error>
        ...
      </Scenario>
      <Scenario>
       ....
      </Scenario>
    </LogTest>
    J'aimerais effectuer une transformation XSLT afin d'avoir un rendu HTML. Pour l'instant, j'arrive à afficher ça, donc c'est à dire, le nom avec seulement la première erreur, or je veux avoir toutes les erreurs sous les noms associés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    2009-06-22_15-26-22__SQLSERVEUR_Portail
        * Warning : Error screenshot - 22/06/2009 15:24:40
    2009-05-29_15-56-28__ORACLE_Portail
        * Warning : Error screenshot - 29/05/2009 15:55:13
    Mon fichier XSLT, il manque surement un for-each ou quelque chose comme ça pour les <li> mais je ne trouve pas la solution, pouvez vous m'aider ? :

    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
    <xsl:template match="/">
      <html>
        <head>
          <title>Errors in the tests</title>
        </head>
        <body>
          <h2 align="center">Errors from different logs</h2>
          <xsl:for-each select="LogTest/Scenario">
            <p>
              <xsl:value-of select="Name"/>
            </p>
            <ul>
              <li>
                <xsl:value-of select="Error"/>
              </li>
            </ul>
          </xsl:for-each>
          <p></p>
        </body>
      </html>
    </xsl:template>
    Merci d'avance !

  2. #2
    Membre averti
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2009
    Messages : 43
    Par défaut
    Bon en fait j'ai trouvé la solution
    Pour ceux qui sont intéressés, j'ai rajouter un noeud Errors pour regrouper tous les Error :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <Errors>
      <Error></Error>
      <Error></Error>
    </Errors>
    Et du coup, mon XSLT est comme cela :
    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
     
    <xsl:template match="/">
        <html>
          <head>
            <title>Errors in the tests</title>
          </head>
          <body>
            <h2 align="center">Errors from different logs</h2>
            <xsl:for-each select="LogTest/Scenario">
              <p>
                <xsl:value-of select="Name"/>
              </p>
              <ul>
                <xsl:apply-templates select="Errors/Error"/>
              </ul>
            </xsl:for-each>
            <p></p>
          </body>
        </html>
      </xsl:template>
      <xsl:template match="Error">
        <li>
          <xsl:value-of select="."/>
        </li> 
      </xsl:template>

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

Discussions similaires

  1. [XSLT] for-each imbriqué
    Par mouna201 dans le forum XSL/XSLT/XPATH
    Réponses: 12
    Dernier message: 28/09/2010, 02h00
  2. [XSLT]for-each imbriqués, et autres galères...
    Par Sarrus dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 16/03/2006, 17h57
  3. [XSLT] for-each
    Par totoen dans le forum XSL/XSLT/XPATH
    Réponses: 10
    Dernier message: 13/03/2006, 07h50
  4. [xslt] For-each dans template avec format XML (row)
    Par Steff1985 dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 17/11/2005, 11h14
  5. [XSLT]for-each imbiqués
    Par Capt. Flame dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 24/10/2005, 12h57

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