Raphaël Franchet wrote:
Tout dépend de comment tu déclenches le pipeline.
Si c'est un client qui le déclenche. Tu peux écrire un sérializer qui
étendra le fo2pdf et qui se contentera de modifier le outputstream.
Berk berk berk!
Un serializer écrit dans un outputstream et ne doit pas s'occuper de
savoir ce qu'est cet outputstream. Ce n'est pas son rôle mais celui de
l'environnement qui appelle le pipeline.
Pour écrire le résultat d'un pipeline sur disque (ou ailleurs), deux
solutions:
- utiliser l'action "copy-source":
<map:act type="copy-source" src="cocoon://pipeline-qui-fait-le.pdf">
<map:parameter name="dest" value="file://le-chemin-du-fichier.pdf"/>
</map:act>
- dans le flowscript, utiliser la classe PipelineUtils (dans
org.apache.cocoon.components.flow.utils) qui propose des méthodes pour
envoyer le résultat d'un pipeline vers un outputstream, un
content-handler SAX ou un document DOM (dans le cas présent, c'est le
premier qui est intéressant).
Sylvain
--
Sylvain Wallez Anyware Technologies
http://apache.org/~sylvain http://anyware-tech.com
Apache Software Foundation Member Research & Technology Director
|