FYI:
CAMEL-3552
CAMEL-3551

I will try to commit it asap.

Regards
JB

On 01/17/2011 11:20 PM, Scott Came wrote:
Thanks Gert.  Good idea.  Looks like Jean-Baptiste is thinking along the same 
lines.

I've made good progress on the file:sender / custom marshaller approach, and am 
under a deadline, so I'll go ahead and finish that off.  But I agree a camel 
component is a better way to go.  It sounds like Jean-Baptiste may be well down 
that road, so wouldn't want to duplicate efforts.

If one comes along at some point, I'd be happy to try it out.  If one doesn't 
get developed, I'd be happy to help.

Thanks.
--Scott

-----Original Message-----
From: Gert Vanthienen [mailto:[email protected]]
Sent: Monday, January 17, 2011 12:30 AM
To: [email protected]
Subject: Re: XSL-FO service engine

Scott,

You could solve this with a file marshaler in JBI.  You then have to either 
package up the Marshaler and its libraries in a shared library or in the SU 
itself.  However...

I think it would be a lot better if we could build a Camel component instead.  
That component could still be used seamlessly inside ServiceMix, but would also 
be useful for people outside of the JBI community.  And, as an extra, a Camel 
component is usually a lot easier to write and maintain than a pure JBI 
component.

Imagine we could build a component which uses a fop: URI scheme to invoke the 
Apache FOP processor, that would allow us to build a Camel route like this to 
receive message on a queue, convert them to XSL-FO using XSLT, then use the new 
FOP processor component and send the output to a printer and a file.

from("amq:my.document.queue")
   .to("xslt:mystylesheet.xsl")
   .to("fop:pdf?some.extra.options.here")
   .to("file:outputdirectory")
   .to("printer:some.printer");

Wdyt?  If this sounds like a good plan to you, we can start by raising a JIRA 
issue, and if you want to take a stab at implementing the component yourself, 
I'll gladly try to help you out wherever I can.

Regards,

Gert Vanthienen
------------------------
FuseSource
Web: http://fusesource.com
Blog: http://gertvanthienen.blogspot.com/



On Sat, Jan 15, 2011 at 8:10 PM, Scott Came<[email protected]>  wrote:
I would like to have (and develop, if necessary) a JBI service engine that 
contains an XSLT stylesheet that transforms an input message (XML) into XSL-FO. 
 The service engine would then apply XSL-FO formatting and generate a PDF into 
a file specified at SE configuration/deployment time.  So in other words, the 
flow would be:

Nmr --[xml message]-->  [XSL FO SE]
                           |
                           -->[XSLT stylesheet]-->[XSL-FO]-->[Apache
FOP]-->[PDF output file]

It looks like I may be able to use the file:sender component, and write my own 
Marshaller...am I on the right track here?  It seems the page at 
http://fusesource.com/docs/esb/4.3/jbi_file/index.html is a place to start.  
However...forgive the newbie question here...how would I deploy the custom 
marshaller?  To use the file component ordinarily, I would use the maven 
archetype to generate the project, then configure it using Spring (in 
xbean.xml).  Would I simply write my marshaller class in src/main/java and then 
reference it in xbean.xml?  And where in the project would I put all the FOP 
jars (and their dependencies)...there is nothing like a /lib directory within 
the structure generated by the maven archetype...

Thanks for any help you can offer.
--Scott




Reply via email to