Thats not the only problem. I get problems when loading an image when multithreaded. As previously posted.
If I could build the darn thing, I might look into fixing it. [INFO]: Parsing of document complete, stopping renderer --------- 08/Apr/2002 12:06:50 GMT+01:00 : Warning [null/com.chase.gmcc.base.xml.XMLUtility.renderFO(String, Document)]: Problem - reason: [null] org.apache.fop.apps.FOPException at java.lang.Throwable.fillInStackTrace(Native Method) at java.lang.Throwable.<init>(Throwable.java:94) at java.lang.Exception.<init>(Exception.java:42) at org.apache.fop.apps.FOPException.<init>(FOPException.java:32) at org.apache.fop.apps.Driver.render(Driver.java:486) at org.apache.fop.apps.Driver.run(Driver.java:554) at com.chase.gmcc.base.xml.XMLUtility.renderFO(XMLUtility.java:323) at com.chase.gmcc.base.xml.XMLUtility.renderFO(XMLUtility.java:293) at Test$1$MultiThreadedObjectProcessor.process(Test.java:31) at com.chase.gmcc.base.utility.AbstractMultiThreadedObjectProcessor$ProcessorThread.run(AbstractMultiThreadedObjectProcessor.java:81) --------- java.lang.NullPointerException at java.lang.Throwable.fillInStackTrace(Native Method) at java.lang.Throwable.<init>(Throwable.java:82) at java.lang.Exception.<init>(Exception.java:33) at org.xml.sax.SAXException.<init>(SAXException.java:61) at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:965) at org.apache.fop.apps.Driver.render(Driver.java:481) at org.apache.fop.apps.Driver.run(Driver.java:554) at com.chase.gmcc.base.xml.XMLUtility.renderFO(XMLUtility.java:323) at com.chase.gmcc.base.xml.XMLUtility.renderFO(XMLUtility.java:293) at Test$1$MultiThreadedObjectProcessor.process(Test.java:31) at com.chase.gmcc.base.utility.AbstractMultiThreadedObjectProcessor$ProcessorThread.run(AbstractMultiThreadedObjectProcessor.java:81) java.lang.NullPointerException at org.apache.fop.image.GifImage.loadImage(GifImage.java:137) at org.apache.fop.image.AbstractFopImage.getBitmaps(AbstractFopImage.java:231) at org.apache.fop.pdf.PDFXObject.output(PDFXObject.java:163) at org.apache.fop.pdf.PDFDocument.output(PDFDocument.java:1202) at org.apache.fop.render.pdf.PDFRenderer.render(PDFRenderer.java:708) at org.apache.fop.apps.StreamRenderer.processQueue(StreamRenderer.java:249) at org.apache.fop.apps.StreamRenderer.addToRenderQueue(StreamRenderer.java:234) at org.apache.fop.apps.StreamRenderer.queuePage(StreamRenderer.java:219) at org.apache.fop.layout.AreaTree.addPage(AreaTree.java:81) at org.apache.fop.fo.pagination.PageSequence.format(PageSequence.java:307) at org.apache.fop.apps.StreamRenderer.render(StreamRenderer.java:200) at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:182) at org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1398) at org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1019) at org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1256) at org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381) at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:948) at org.apache.fop.apps.Driver.render(Driver.java:481) at org.apache.fop.apps.Driver.run(Driver.java:554) at com.chase.gmcc.base.xml.XMLUtility.renderFO(XMLUtility.java:323) at com.chase.gmcc.base.xml.XMLUtility.renderFO(XMLUtility.java:293) at Test$1$MultiThreadedObjectProcessor.process(Test.java:31) at com.chase.gmcc.base.utility.AbstractMultiThreadedObjectProcessor$ProcessorThread.run(AbstractMultiThreadedObjectProcessor.java:81) Regards Paul. "David B. Bitton" <[EMAIL PROTECTED]> on 05/04/2002 00:31:38 Please respond to [EMAIL PROTECTED] To: [EMAIL PROTECTED] cc: Subject: Re: Multithreaded failure I moved the creation (and destruction) of the Driver object inside the method. Also I had forgotten that in Apache SOAP, you can control object lifetime. So I changed it from Application to Request, so now each request gets a fresh instance of my class. This works, but I'm not happy with it. My question is this, if I have a Driver object as a global inside my class, will it be trounced by another instance running in a different thread? -- David B. Bitton [EMAIL PROTECTED] www.codenoevil.com Code Made Fresh DailyT ----- Original Message ----- From: "Scott Moore" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, April 04, 2002 5:23 PM Subject: RE: Multithreaded failure > > Upon init (once in the servlet) > > // Gotta configure FOP to know where the base directory is. Otherwise > // it will generate errors. Add a trailing slash so we can use relative > // paths in our XSL. > org.apache.fop.configuration.Configuration.put("baseDir", "file:" + dir > + File.separator); > org.apache.fop.configuration.Configuration.put("strokeSVGText", new > Boolean(false)); > > > > Done for every report request: > > > public static void createPDF(Document xslfo, > OutputStream pdf) > throws IOException, FOPException > { > Driver driver = new Driver(new DocumentInputSource(xslfo), pdf); > > Hierarchy hierarchy = Hierarchy.getDefaultHierarchy(); > Logger log = hierarchy.getLoggerFor("fop"); > if (debugMode) > { > log.setPriority(Priority.DEBUG); > } > else > { > log.setPriority(Priority.FATAL_ERROR); > } > driver.setLogger(log); > driver.setRenderer(Driver.RENDER_PDF); > driver.run(); > pdf.flush(); > } > > > > HTH, > Scott > > -----Original Message----- > From: David B. Bitton [mailto:[EMAIL PROTECTED]] > Sent: Thursday, April 04, 2002 4:58 PM > To: [EMAIL PROTECTED] > Subject: Re: Multithreaded failure > > > Simply because it is at the top of my SOAP method. I don't think that there > is an init() called on a SOAP class. Also, do you instantiate a new Driver > object for every call to the servlet? I'd appreciate if you could share > some code. Thanks. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, email: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]