On 3/02/2012 10:13 PM, Theresa Jayne Forster wrote:

The stacktraces were added to allow me to quickly debug without trapesing through the mega log that log4J is spewing out from the whole system (I know its wrong hell I cringe whenever I see some of the code but it is based on the old system just upgraded for Fop 1.0 as the old system was 0.23 with a handful of custom addons like accepting font-weight="bold" and z-index="2" to using a bare 1.0

OK, but either way you're still ignoring the exceptions. That was just as wrong before the printStackTrace calls were added as it is now.

UPDATE: Tried on 0.95-1 and 0.95 (the latter needed the Avalon framework
adding manually to the pom)
Still does not work, any suggestions why I am getting a pdf that works in a
3rd party viewer and not in adobe.


Because you are getting an incomplete, damaged PDF. Some viewers manage to cope with it, others do not. When I open the file in a hex editor (or a decent text editor) I can see that it ends at an `endobj', not with a proper xref dictionary and trailer.

What *should* be happening is that when fop hits whatever error prevents it from finishing generating the PDF it throws an exception. Your app should catch that exception, delete the temporary file, and rethrow the exception or handle it within your app's error handling and reporting framework. Logging and ignoring the exception is *incorrect*.

You have still not confirmed whether or not fop is throwing an exception when generating this file. Please confirm whether fop actually throws an exception when generating this file.

If fop *does not *throw an exception, there is a fop bug.

If fop *does *throw an exception, there is a bug in your code.

--
Craig Ringer

Reply via email to