This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I am trying to explore Apche FOP library to create PDF documents and gone through all the examples.
In my application, we query database and get the value objects (java beans) and out of this we need to create PDF files. I looked at ExampleJavatoPDF, for me it looks too much of code (with SAXSource). I was thinking to use JAXB annotations (jaxb is shipped with JDK1.6) and generate XML stream on the fly and apply XSL to generate PDF.
The code looks as below.
It works fine. My question is, is it best practice to generate PDF files from Java Objects? Is there a better way? Can we generate XSL-FO from Java objects?
I'm no expert but I've been playing around with Xml to Pdf like you and from what I have seen you can generate XSL-FO document automatically but you have to have an XSLT document with the :fo directives embedded into it. The XSLT document can be used in a java program to output the XSL-FO document and then you need to use then Apache FOP driver to run the FO document against your Xml to produce the Pdf. It's a two stage process.XSLT to XSL-FO and XSL-FO to PDF. I'm sorry I have no examples right now but I have seeen this in the book 'PRO XML DEVELOPMENT WITH JAVA TECHNOLOGY' by Apress.