Ok, I'm doing this: Transformer transformer = tFactory.newTransformer( new StreamSource( xsl_url ) ); transformer.transform( new DOMSource( source ), new SAXResult( driver.getContentHandler() ));
and I'm getting javax.xml.transform.TransformerException: java.lang.NullPointerException. this is last point of execution in the stack trace: at org.apache.fop.fo.pagination.PageSequence.<init>(PageSequence.java:144) Do you, or anyone know why this would be? Also, once this runs, do I call driver.run()? On Fri, Mar 22, 2002 at 05:59:26PM +0100, Jeremias Maerki wrote: > > I was just looking at the FOP API JavaDocs. Can I use getContentHanlder from the >Driver object, send that > > into the transformer wrapped in a SAXResults object? Will this populate FOP with >the required data to do > > the XSL:FO transform? > > You got it!!!!! That's just what I was about to suggest. > > > On Fri, Mar 22, 2002 at 11:22:12AM -0500, David B. Bitton wrote: > > > 1000/N > > > Status: O > > > X-Status: > > > X-Keywords: > > > X-UID: 600 > > > > > > Ok this is what I'm doing: > > > > > > I produce an XML file from data stored on a mainframe. The XML is generate in a >VB object. The XML is > > > passed up to an ASP page that makes a Low Level API SOAP call, using MSSOAP >Toolkit 2.0, to my PDF server. > > > The PDF server is running Tomcat 4/Apache SOAP 2.2. > > Concerning Apache SOAP 2.2: You might want to have a look at Axis > (http://xml.apache.org/axis) which is a floolow-on for SOAP 2.2. I think > I heard once that it is based on SAX rather than DOM. Haven't tested it, > though. > > > > > > > On the PDF server, I receive the XML as literalxml in the envelope, fetch a >stylesheet, pass the Element > > > object to a Xalan 2.3 transformer (wrapped in a DOMSource object), and then >transform the XML into XSL:FO > > > objects. > > > > > > Now I have a Document object that was returned from the transformer wrapped in a >DOMResults object. The > > > next step is where the problem lies. I want to pass the Document to a Driver, >but I get the dreaded > > > NullPointerException. > > > > > > Most of the time, the XML is will be small ( 5 - 7K), but there is a potention >for an account to have 5 to > > > 10 thousand transactions in a day, and we store up to 63 days of data (a single >transaction in XML is 594 > > > bytes, therefore a 630K transaction XML file would be 374MB, plus some extra >data at the top). So you can > > > see what I have the potential to deal with. > > > > > > What I don't even know is how FOP will handle this. The XSL:FO file is sure to >be much larger than 380MB. > > > I transformer a 6.66KB XML file and it produced a XSL:FO file of 16.2KB. If we >use that as a benchmark, > > > than the same 374MB would become 909.8MB. That's a whole lot of RAM, not to >mention what FOP is going to > > > use to store the rendered PDF. > > I hope you will be lucky. Some have reported that big documents work > well. Others were not so lucky. As long as there are not many references > in your documents you should get quite far. You can browse the archives. > There has been a number of discussions on this topic. > > > > I'm hoping that someone can poke a hole in these numbers (please), because this >is getting to look a whole > > > lot bigger than expected. Obviously performance and resource utilization are >major concernes (like when are > > > they not?). Obviously SAX for this would be faster because it wouldn't require >loading the entire XML > > > contents into memory. > > > > > > So, now is here the questions come in. Do I return from the transform a >SAXResults? Also, how do I > > > effectively handle the incoming XML into the SOAP method? I would prefer to >send the XML in literalxml > > > format so the < and > are HTML encoded (increasing the size of the content even >more). > > > > > > Where do I go from here? > > > > > > > > > On Fri, Mar 22, 2002 at 04:49:40PM +0100, Jeremias Maerki wrote: > > > > <comment>Oops, that one didn't make it to the list at first.</comment> > > > > > > > > DOM (Document) should work. But using DOM to process a 400MB XML? You > > > > wouldn't want to do that. Try to find a way to use SAX. You can fill SAX > > > > events into FOP to create the FO tree. Maybe it helps us to provide you > > > > with some pointers and ideas if you tell us what exactly you're trying > > > > to do. > > > > > > > > > I'm sorry to post this again but I need help. Does passing a Document >datatype to the Driver > > > > > render() method work? I have to potential to move XML files in excess of >400MB and so I need to avoid as > > > > > moving of data in memory as possible. > > Cheers, > Jeremias M?rki > > mailto:[EMAIL PROTECTED] > > OUTLINE AG > Postfach 3954 - Rhynauerstr. 15 - CH-6002 Luzern > Tel. +41 41 317 2020 - Fax +41 41 317 2029 > Internet http://www.outline.ch > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, email: [EMAIL PROTECTED] -- David B. Bitton [EMAIL PROTECTED] Diversa ab illis virtute valemus. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]