Hello, I'm getting a little frustrated with FOP performance.
We are generating an XML on the fly that contains a few tables with about
1,000 rows in total.
We passdown this XML along with XSL to the transformer to generate PDF
from our servlet.
(transformer.transform( inXML, new SAXResult(
It works well, but it works slow.
It takes about 5 minutes for 1,000 rows and this is only for transformer
translation (excluing any data query time or jdom XML building time)
I read through past emails/FAQs and I think I tried them all and it still
does not improve the performance...
Here is what I have done.
1) run with more memory - yes I tried with 512MB (I don't get OutOfMemory
2) run in separate VM - only helps other requests coming to the site
3) try with the latest FOP - I did - mine is fop-0.20.4
4) try with the latest xalan.jar and xerces.jar - tried them, but no
5) cache XSL style sheet - didn't really help...
6) use multiple page-sequence - got it to work and I don't get
OutOfMemeory exception, but still performance didn't get better.
(even if I break them into multiple page-sequences, I will still
have to read through one row at a time, right? - that's why performance is
not really improving..)
7) no forward-reference - I don't have any page numbers
8) try with new JDK - trying with JDK 1.3
9) seralize servlet request - haven't done this, but I doubt this will
have any performance impact (I'm testing with one request for now)
10) no images - I don't have any...
11) Don't make the XML tree too deep - mine is very flat with 2 levels
I have 1,000 rows and each row looks something like following in XML
<RATE_DATE>09 Dec 2002</RATE_DATE>
Here is the question:
Is this normal to take this long - 5 minutes - to produce a few tables
with combined total 1,000 rows (about 30 pages)?
Any other better way?
Thank you for your suggestions.
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]