Converting xml/xsl to pdf
843834Jan 23 2002 — edited Oct 30 2002Hi,
I am using apache's FOP 0.20.3, xerces 2.0.0.beta4 and xalan j.2.2.0 to convert xml/xsl file to pdf. The code is same as the one given in the org.apache.fop.apps.Driver class.
<pre>
Driver driver = new Driver();
driver.setRenderer(Driver.RENDER_PDF);
InputHandler inputHandler = new XSLTInputHandler(new File(xmlFile), new File(xslFile));
try
{
XMLReader parser = inputHandler.getParser();
driver.setOutputStream(new FileOutputStream(outFile));
driver.render(parser, inputHandler.getInputSource());
}
catch (FOPException fope)
{
fope.printStackTrace();
}
catch (FileNotFoundException fnfe)
{
fnfe.printStackTrace();
}
</pre>
The xml and xsl files I am using are glossary.xml and glossary.xsl files that come with FOP.
Now, this code compiles successfully and while running gives the following exception:
<pre>
[ERROR]: Logger not set
[INFO]: building formatting object tree
[INFO]: [1]
org.apache.fop.apps.FOPException: java.lang.NullPointerException
at org.apache.fop.apps.Driver.render(Driver.java:486)
at XmlToPdf2.<init>(XmlToPdf2.java:28)
at XmlToPdf2.main(XmlToPdf2.java:42)
---------
java.lang.RuntimeException: java.lang.NullPointerException
at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1132)
at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:134)
at org.apache.fop.apps.Driver.render(Driver.java:481)
at XmlToPdf2.<init>(XmlToPdf2.java:28)
at XmlToPdf2.main(XmlToPdf2.java:42)
---------
java.lang.RuntimeException: java.lang.NullPointerException
at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3170)
at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:433)
at org.apache.xerces.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:629)
at org.apache.xerces.impl.XMLNamespaceBinder.endDocument(XMLNamespaceBinder.java:702)
at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(XMLDTDValidator.java:974)
at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:445)
at org.apache.xerces.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1123)
at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityManager.java:3078)
at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(XMLEntityManager.java:2766)
at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(XMLDocumentScannerImpl.java:995)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:332)
at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:510)
at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:557)
at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1096)
at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:134)
at org.apache.fop.apps.Driver.render(Driver.java:481)
at XmlToPdf2.<init>(XmlToPdf2.java:28)
at XmlToPdf2.main(XmlToPdf2.java:42)
---------
java.lang.RuntimeException: java.lang.NullPointerException
at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1132)
at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:134)
at org.apache.fop.apps.Driver.render(Driver.java:481)
at XmlToPdf2.<init>(XmlToPdf2.java:28)
at XmlToPdf2.main(XmlToPdf2.java:42)
---------
java.lang.RuntimeException: java.lang.NullPointerException
at org.apache.xalan.transformer.TransformerImpl.run(TransformerImpl.java:3170)
at org.apache.xalan.transformer.TransformerHandlerImpl.endDocument(TransformerHandlerImpl.java:433)
at org.apache.xerces.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:629)
at org.apache.xerces.impl.XMLNamespaceBinder.endDocument(XMLNamespaceBinder.java:702)
at org.apache.xerces.impl.dtd.XMLDTDValidator.endDocument(XMLDTDValidator.java:974)
at org.apache.xerces.impl.XMLDocumentScannerImpl.endEntity(XMLDocumentScannerImpl.java:445)
at org.apache.xerces.impl.XMLEntityManager.endEntity(XMLEntityManager.java:1123)
at org.apache.xerces.impl.XMLEntityManager$EntityScanner.load(XMLEntityManager.java:3078)
at org.apache.xerces.impl.XMLEntityManager$EntityScanner.skipSpaces(XMLEntityManager.java:2766)
at org.apache.xerces.impl.XMLDocumentScannerImpl$TrailingMiscDispatcher.dispatch(XMLDocumentScannerImpl.java:995)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:332)
at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:510)
at org.apache.xerces.parsers.StandardParserConfiguration.parse(StandardParserConfiguration.java:557)
at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:148)
at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1096)
at org.apache.xalan.transformer.TrAXFilter.parse(TrAXFilter.java:134)
at org.apache.fop.apps.Driver.render(Driver.java:481)
at XmlToPdf2.<init>(XmlToPdf2.java:28)
at XmlToPdf2.main(XmlToPdf2.java:42)
</pre>
Can anybody help?