voir le XML question toute conne, pour visualiser ss passer par saxon

voir le XML question toute conne, pour visualiser ss passer par saxon - Programmation

Marsh Posté le 19-07-2002 à 11:49:14    

pour pouvoir voir le xml mis en forme avec le xsl ds IE, fo raouter koi ou cocher quel option ?
chez moi g IE6, il me le fait tout seul g pas besoin de passer par saxon.
ici, meme IE (6 et 5) et ben ca marche pas suis oblige de passer par saxon pour visualiser le doc mis en forme.
comment faire ?

Reply

Marsh Posté le 19-07-2002 à 11:49:14   

Reply

Marsh Posté le 19-07-2002 à 12:52:10    

ça t'arrive de lire les topics avant ?
 
http://forum.hardware.fr/forum2.ph [...] h=&subcat=
 
-->"... Seul Mozilla et IE6 intègre un processeur XSLT et permettent la transformation sur le client (nécessite l'installation de MSXML sur les version précédentes de IE). Pour l'instant, il vaut mieux effectuer cette transformation côté serveur... Télécharger Instant Saxon pour se faire la main sur des transformations XML/XSLT."
 
le lien ici :
http://msdn.microsoft.com/download [...] itedoc.xml

Reply

Marsh Posté le 19-07-2002 à 16:13:06    

encore mieux, si tu veux que la conversion soit effectué automatiquement côté serveur (si tu ne peux pas installer MSXML sur tous les clients) :
 

  • installes Cocoon 2 comme il est dit dans le Topic :

http://forum.hardware.fr/forum2.ph [...] h=&subcat=
 

  • crées toi un répertoire de travail dans cocoon, par exemple ...chemin\cocoon\travail


  • ouvres le sitemap.xmap principal (dans le répertoire cocoon)

et colle ça entre les balises

Code :
  1. [map:pipelines]
  2. ...
  3. [/map:pipelines]


 

Code :
  1. <map:pipeline> 
  2.   <!-- match the travail homepage -->
  3.   <map:match pattern="travail">
  4.     <map:mount uri-prefix="travail" check-reload="yes" reload-method="synchron" src="travail/"/>
  5.   </map:match> 
  6.   <!-- match all other travail pages -->
  7.   <map:match pattern="travail/**">  
  8.     <map:mount uri-prefix="travail" check-reload="yes" reload-method="synchron" src="travail/"/>  
  9.   </map:match>   
  10. </map:pipeline>


 

  • créé un sitemap.xmap dans ton répertoire cocoon\travail avec ce contenu :
Code :
  1. <?xml version="1.0"?>
  2. <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
  3.   <map:components> 
  4.     <map:generators default="file"/> 
  5.     <map:transformers default="xslt">
  6.       <map:transformer name="xslt"
  7.         src="org.apache.cocoon.transformation.TraxTransformer"/>
  8.     </map:transformers>   
  9.     <map:readers default="resource"/> 
  10.     <map:serializers default="html">
  11.       <map:serializer name="html" mime-type="text/html"
  12.         src="org.apache.cocoon.serialization.HTMLSerializer"/>
  13.     </map:serializers>   
  14.     <map:matchers default="wildcard">
  15.       <map:matcher name="wildcard" src="org.apache.cocoon.matching.WildcardURIMatcherFactory"/>
  16.     </map:matchers>   
  17.   </map:components>
  18.  
  19.   <map:pipelines>
  20.     <map:pipeline>
  21.       <map:match pattern="*.html">
  22.    <map:generate src="{1}.xml" />
  23.         <map:transform src="{1}.xsl" />
  24.    <map:serialize />
  25.       </map:match>
  26.   <map:match pattern="**.css">
  27.       <map:read mime-type="text/css" src="{1}.css"/>
  28.      </map:match>
  29.   <map:match pattern="**.jpg">
  30.       <map:read mime-type="image/jpg" src="{1}.jpg"/>
  31.      </map:match>
  32.     </map:pipeline>
  33.   </map:pipelines>
  34. </map:sitemap>


 

Par exemple, tu déposes dudu.xml et dudu.xsl dans cocoon/travail, tu tapes http://localhost:8080/cocoon/travail/dudu.html et tu mates
 

  • maintenant, si tu veux qu'un seul xslt fasse la transformation de tous tes xml, remplaces dans cocoon/travail/sitemap.xmap


<map:transform src="{1}.xsl" />
par
<map:transform src="nomduXSL.xsl" />
 
alors c'est pas magique ça ?  :D


Message édité par chocoboy le 19-07-2002 à 16:15:02
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed