Forum Programmation.autre XSL pour débutant

Posté par  (site web personnel) .
Étiquettes : aucune
0
9
fév.
2010
Je me retrouve avec les logs d'openfire à parser, du coup je me dis : "tiens, je ne connais pas XSL et si j'essayais..."

Résultat : Laloose !

J'ai fait des tonnes de tests, si quelqu'un pouvait me dire ce qui ne va pas dans ce que j'ai pond. Grosso modo, ce que nous souhaitons, c'est d'avoir le timestamp, le from , le to et le body (le reste rien à battre).

Le XML qui va presque bien : http://pastebin.com/f46967f55

Une tentative XSL parmis d'autres: http://pastebin.com/f27716c0d
Ou bien encore :http://pastebin.com/f153affac

Bref : HELP !

N.B. Désolé de paser par pastebin, mais j'arrive pas à générer un post lisible sur dlfp.
  • # j'y connais rien mais

    Posté par  . Évalué à 2.

    dans le 1er xsl

    je vois un foreach en commentaire pour le "message"
    (lignes 25.26)
    qui se termine en 31

    le foreach ouvrant est commenté mais pas le reste du code jusqu'a la ligne 32
    donc logiquement il ne va pas trouver les from, to et body dans le "packet"

    de plus ce ne sont pas tous les packets qui ont un "body"


    dans le fichier xml de depart
    ton premier body est en ligne 49/50 soit bien apres quelques packet
    • [^] # Re: j'y connais rien mais

      Posté par  (site web personnel) . Évalué à 1.

      Ah oui les commentaires sont ceux que j'ai posé, pour debugguer.
      Ils sont là pour vérifier, les modificatinos faites au fur et à mesure.
      Si on les enlève, le résultat n'est pas meilleur...
  • # f^ck les namespaces

    Posté par  . Évalué à 1.

    En fait les namespaces ça te mets pas mal la zone, surtout que globalement pour ce genre de trucs ça ne sert à rien. Je ne pourrais pas t'aider parce que je mets toujours un sed devant qui les vire afin de ne pas trop affecter ma santé mentale ...
    Une fois les namespaces virés, ça marchera bcp mieux. Repris de tes essais, voici un exemple qui affiche juste les timestamp (attention, je vais essayer de faire passer du texte avec des balises xml, je m'assoie bien sur sur l'indentation, hein ;) :

    &lt;?xml version=&quot;1.0&quot; encoding=&quot;ISO-8859-1&quot;?&gt;<br/>
    &lt;xsl:stylesheet version=&quot;1.0&quot; xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;&gt;<br/>
    <br/>
    &nbsp;&nbsp;&lt;xsl:template match=&quot;/&quot;&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&lt;html&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;head&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;title&gt;Chatlog&lt;/title&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/head&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;body&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;table border=&quot;1&quot;&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;tr&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;Date&lt;/th&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;From&lt;/th&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;To&lt;/th&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;Body&lt;/th&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/tr&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;xsl:apply-templates select=&quot;jive/packet&quot;/&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/table&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/body&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&lt;/html&gt;<br/>
    &nbsp;&nbsp;&lt;/xsl:template&gt;<br/>
    <br/>
    &nbsp;&nbsp;&lt;xsl:template match=&quot;packet&quot;&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&lt;tr&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;&lt;xsl:value-of select=&quot;@timestamp&quot;/&gt;&lt;/td&gt;<br/>
    &nbsp;&nbsp;&nbsp;&nbsp;&lt;/tr&gt;<br/>
    &nbsp;&nbsp;&lt;/xsl:template&gt;<br/>
    <br/>
    &lt;/xsl:stylesheet&gt;<br/>

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.