cocoon-users-fr mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sylvain Wallez <sylv...@apache.org>
Subject Re: �que
Date Mon, 18 Apr 2005 09:52:30 GMT
Aurélien DEHAY wrote:

>Le lundi 18 avril 2005 à 10:36 +0200, Sylvain Wallez a écrit :
>  
>
>>On peut utiliser le directory generator pour avoir la liste des fichiers 
>>xml, et transformer cette liste en une série d'inclusions d'url 
>>"cocoon:" (transformer xinclude) qui vont déclencher l'enregistrement de 
>>tous les fichiers.
>>    
>>
>
>Hmmmm.... L'idée, si j'ai bien compris, est, sur un répertoire qui
>contient 1.xml, 2.xml et 3.xml, lancer un «truc» pour avoir 1.pdf, 2.pdf
>et 3.pdf.... Il y a moyen de faire ça sans flowscript? Je vois mal
>comment le xinclude pourrait résoudre le problème.
>  
>

<map:pipeline>
  <!-- génération d'un PDF -->
  <map:match pattern="{1}.pdf">
    <map:generate src="data-dir/{1}.xml"/>
    <map:transform src="data2fo.xsl"/>
    <map:serialize type="fo2pdf"/>
  </map:match>

  <!-- copie d'un pdf géneré sur disque, et production d'une petite page 
de rapport -->
  <map:match pattern="copy-pdf-*.html">
    <map:act type="copy-source" src="cocoon://{1}.pdf">
      <map:parameter name="dest" value="pdf-dir/{1}.pdf"/>
    </map:act>
    <map:generate type="jx" src="success.jx">
      <map:parameter name="filename" value="{1}"/>
    </map:generate>
    <map:serialize type="html"/>
  </map:match>

  <!-- On génère tout -->
  <map:match pattern="generate-all.html">
    <!-- liste de tous les fichiers xml -->
    <map:generate type="directory" src="data-dir"/>
    <!-- on transforme en une série de <xi:include 
href="cocoon://copy-pdf-xxx.html"/> -->
    <map:transform src="dir2include.xsl"/>
    <!-- on réalise l'inclusion qui par effet de bord va copier les 
fichiers sur disque -->
    <map:transform type="xinclude"/>
    <!-- et on présente joliement la liste des fichiers qui ont été 
générés -->
    <map:transform src="result2html.xsl"/>
    <!-- terminé! -->
    <map:serialize type="html"/>
  </map:match>

</map:pipeline>


Voilà voilà ;-)

Sylvain

-- 
Sylvain Wallez                        Anyware Technologies
http://apache.org/~sylvain            http://anyware-tech.com
Apache Software Foundation Member     Research & Technology Director


---------------------------------------------------------------------
Liste francophone Apache Cocoon -- http://cocoon.apache.org/fr/
Pour vous desinscrire : mailto:users-fr-unsubscribe@cocoon.apache.org
Autres commandes : mailto:users-fr-help@cocoon.apache.org


Mime
View raw message