With Cocoon 2.2 (http://cocoon.apache.org/2.2/1291_1_1.html) you can actually create a transformer service which could look something like:
If the snippet below would be your transformer service <?xml version="1.0" encoding="UTF-8"?> <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0"> <map:pipelines> <map:pipeline> <map:match pattern="chainedTransformer-service"> <map:generate src="service-consumer:"/> <map:transform type="myTransformer1"/> <map:transform type="myTransformer2"/> <map:transform type="myTransformer3"/> <map:serialize type="xml"/> </map:match> </map:pipeline> </map:pipelines> </map:sitemap> And this would be the block calling the service: <?xml version="1.0" encoding="UTF-8"?> <map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0"> <map:pipelines> <map:pipeline> <map:match pattern="callingTransformationService"> <map:generate src="demo/welcome.xml"/> <map:transform type="servletService"> <map:parameter name="service" value="servlet:myBlock2:/chainedTransformer-service"/> </map:transform> <map:serialize type="xml"/> </map:match> </map:pipeline> </map:pipelines> </map:sitemap> Is that more or less what you are trying to accomplish? Kind regards, Robby Pelssers -----Original Message----- From: Robby Pelssers [mailto:[email protected]] Sent: Friday, June 11, 2010 9:13 AM To: [email protected]; [email protected] Subject: RE: Aggregated Transformer Is it not possible to define a resource which includes these 3 transformers? http://cocoon.apache.org/2.1/userdocs/concepts/sitemap.html <map:resources> <map:resource name="chainedTransformer"> <map:transform type="myTransformer1"/> <map:transform type="myTransformer2"/> <map:transform type="myTransformer3"/> </map:resource> </map:resources> And just call this chainedTransformer? Robby -----Original Message----- From: Luca Morandini [mailto:[email protected]] Sent: Friday, June 11, 2010 1:36 AM To: [email protected] Subject: Re: Aggregated Transformer On 10/06/10 11:19, Ali Mahdoui wrote: > Hi, > The answer to my question is sure simple but i dont find out how i ca do it. > i am writing a cocoon block that has three sax transformers which should > be always called after each other. > I there a possibility to aggregate these transformers in only one? this > will make the usage of my block with other cocoon blocks much easier. Not sure I understood this. If you put this transformation stages in a pipeline, then the pipeline contents are hidden from calling blocks... how having only one transformation stage can ease the usage ? Regards, -------------------- Luca Morandini www.lucamorandini.it -------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
