I'm a bit overwhelmed with the response to this thread. I must say that I have been considering each response thoughtfully. It seems that whenever the subject of reporting comes up, there are a lot of angles to consider. It seems that some combination of spool files, HTML files, PDF files may be needed. Converting a report into an "image" format, may also be needed. No single product or programming interface meets every need. You must pool from multiple sources to meet most needs.
Last night, I began looking at IBM's PSF Server, InfoPrint Server, and now with release 7.1 there is a bundled IBM i product that runs under PASE, and named Transform Services. I gather by some of the documented programming interfaces, that PSF is Java based, in part - evidently the part that generates PDF documents from spool files.
----- Original Message ----
From: Peter Connell <Peter.Connell@xxxxxxxxxxxxxxxxx>
To: Web Enabling the AS400 / iSeries <web400@xxxxxxxxxxxx>
Sent: Tue, May 11, 2010 6:36:40 PM
Subject: Re: [WEB400] PDF Performance
I have mentioned in some previous thread that we have been happily running PD4ML to generate a PDF version of our web page on request by pressing a button.
This has been working well for the past year now and we never have to worry about it. A 10 page PDF response within 5 seconds.
I have not downloaded a newer release (in fact I got an automatic email update from PD4ML yesterday about the latest and greatest).
But I was concerned about performance with regard to loading the JVM.
I was able to determine the appropriate class to call with the intention of calling a class directly from RPG to benefit from the 1 JVM per job feature.
In fact I found a bit of java code on the web somewhere that showed how to create a little wrapper that called the correct PD4ML class in the expected manner.
So I compiled this wrapper as a little class of my own which I now call from RPG.
To avoid the JVM startup for the job I use a server job and a data queue (I know you'll like that)
Running the class in a server job was also essential since, to implement the headless java requirement, IBM apparently launches a PASE environment within the job just to achieve this.
Unfortunately this conflicts with any existing apps which may already run some task that uses PASE because they fail when they attempt to start the PASE environment.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2022 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.