I doubt if this is your problem, but have you made sure to define both the
XSL and FO namespaces at the top of your XSL stylesheet?
 
<xsl:stylesheet version="1.0" 
    xmlns:xsl=" http://www.w3.org/1999/XSL/Transform
<http://www.w3.org/1999/XSL/Transform> " 
    xmlns:fo=" http://www.w3.org/1999/XSL/Format
<http://www.w3.org/1999/XSL/Format> "
>

I struggled with null pointer exceptions for about three days until I
figured this one out.
 
Good luck!
 
-Matt
 

-----Original Message-----
From: Paul Kowlessar [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, October 02, 2001 2:16 PM
To: [EMAIL PROTECTED]
Subject: Re: Newbie question: Error: Null


Amit, 

I did as you asked and here is the resulting exceptions.  I'm stumped. 


/***************************************************************************
***/ 
javax.xml.transform.TransformerConfigurationException:
javax.xml.parsers.FactoryConfigurationError: com.sun.xml.p 
        at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:815) 
        at
org.apache.fop.tools.xslt.TraxTransform.getTransformer(TraxTransform.java:50
) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:100) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:80) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:76) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:49) 
        at PDFTest.<init>(PDFTest.java:87) 
        at PDFTest.main(PDFTest.java:107) 
--------- 
javax.xml.transform.TransformerException:
javax.xml.parsers.FactoryConfigurationError: com.sun.xml.parser.SAXPars 
        at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:813) 
        at
org.apache.fop.tools.xslt.TraxTransform.getTransformer(TraxTransform.java:50
) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:100) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:80) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:76) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:49) 
        at PDFTest.<init>(PDFTest.java:87) 
        at PDFTest.main(PDFTest.java:107) 
--------- 
org.xml.sax.SAXException: javax.xml.parsers.FactoryConfigurationError:
com.sun.xml.parser.SAXParserFactoryImpl 
        at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:771) 
        at
org.apache.fop.tools.xslt.TraxTransform.getTransformer(TraxTransform.java:50
) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:100) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:80) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:76) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:49) 
        at PDFTest.<init>(PDFTest.java:87) 
        at PDFTest.main(PDFTest.java:107) 
--------- 
org.xml.sax.SAXException: javax.xml.parsers.FactoryConfigurationError:
com.sun.xml.parser.SAXParserFactoryImpl 
        at
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:771) 
        at
org.apache.fop.tools.xslt.TraxTransform.getTransformer(TraxTransform.java:50
) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:100) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:80) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:76) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:49) 
        at PDFTest.<init>(PDFTest.java:87) 
        at PDFTest.main(PDFTest.java:107) 
java.lang.reflect.InvocationTargetException: java.lang.NullPointerException 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:102) 
        at
org.apache.fop.tools.xslt.TraxTransform.transform(TraxTransform.java:80) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:76) 
        at
org.apache.fop.tools.xslt.XSLTransform.transform(XSLTransform.java:49) 
        at PDFTest.<init>(PDFTest.java:87) 
        at PDFTest.main(PDFTest.java:107) 
[ERROR]: Logger not set 
[INFO]: building formatting object tree 
/***************************************************************************
*************/ 


Cheers...Paul 
  


Amit wrote: 


Paul I haven't had much luck with XSLTInputHandler 
For some reason I could never get it working. I used
org.apache.fop.tools.xslt.XSLTransform instead and 
everything works great. 
I have attached my code for a servlet, so to use it in your application
substitute all the 
ByArrayOutputStream to FilOutputStream and it should work. 
I haven't tried it but if you have problems I'll try it give you feedback if
neccessary. 

/*----------------------Code snippet begin ---------------------------*/ 


String xmlFile=" file:C:\\yourfile.xml <file:C:\\yourfile.xml> "; 
String xmlFile=" file:C:\\yourfile.xsl <file:C:\\yourfile.xsl> "; 
java.io.Reader reader; 
Writer writer = new StringWriter(); 
try{ 
ByteArrayOutputStream out = new ByteArrayOutputStream(); 
  XSLTransform.transform(xmlFile, 
                                       xslFile, writer); 


  writer.flush(); 
            writer.close(); 


  reader = new StringReader(writer.toString()); 


      Driver driver = new Driver(new InputSource(reader), out); 
      driver.setRenderer(Driver.RENDER_PDF); 
          driver.run(); 
            byte[] content = out.toByteArray(); 
            response.setContentType("application/pdf"); 
            response.setContentLength(content.length); 
            response.getOutputStream().write(content); 
            response.getOutputStream().flush(); 


} catch (Exception ex) { 
            throw new ServletException(ex); 
        } 


/*
------------------------------------------------------------------------*/ 


Paul Kowlessar wrote: 


> Hi Amit, 
> 
> I'm sorry; I should have mentioned that these errors occur while running
the standalone application 
> as well.  As to your question, I want to use Fop within an application on
the client side. 
> 
> Cheers...Paul 
> 
> Amit wrote: 
> 
> > Paul, 
> > There is already a class which will take the xml, xsl files and outpu a
pdf! 
> > There is also a batch file (if you or unix a shell script) which will do
this for you. 
> > It is is in your fop installation directory and is called fop.bat
(fop.sh on unix). 
> > This is for a standalone application. Are you trying to create a servlet
which will out put PDF 
> > files with the xml and xsl files as input? 
> > 
> > Amit 
> > 
> > Paul Kowlessar wrote: 
> > 
> > > Hi, 
> > > 
> > > I have just downloaded FOP 0.20.2 and have included the appropriate
jars 
> > > into my classpath. To test my installation, I have created a simple 
> > > program based on the code in the "Embedding FOP" page.  Here is the 
> > > code: 
> > > /********************************************/ 
> > > import java.util.*; 
> > > import java.io.*; 
> > > import java.io.FileOutputStream; 
> > > import org.apache.fop.apps.*; 
> > > import org.xml.sax.*; 
> > > import org.apache.avalon.framework.logger.*; 
> > > import org.apache.log.*; 
> > > 
> > > public class PDFTest 
> > > { 
> > >   public PDFTest() 
> > >   { 
> > >    Logger log = null; 
> > >    Hierarchy hierarchy = Hierarchy.getDefaultHierarchy(); 
> > >    log = hierarchy.getLoggerFor("fop"); 
> > >    log.setPriority(Priority.WARN); 
> > > 
> > >    String xmlFile = "c:\\worktemp\\01M10_YVR_FA.xml"; 
> > >    String xslFile = "c:\\worktemp\\bidreport.xsl"; 
> > >    String pdfFile = "c:\\worktemp\\outFile.pdf"; 
> > >    FileOutputStream output = null; 
> > >    try{ 
> > >        output = new FileOutputStream(pdfFile); 
> > >        Driver driver = new Driver(); 
> > >        driver.setLogger(log); 
> > >        driver.setRenderer(Driver.RENDER_PDF); 
> > >        XSLTInputHandler inputHandler = new XSLTInputHandler(new 
> > > File(xmlFile), newFile(xslFile)); 
> > >        org.xml.sax.XMLReader parser = inputHandler.getParser(); 
> > >        driver.setOutputStream(output); 
> > >        driver.render(parser,inputHandler.getInputSource()); 
> > >    }catch (Exception ex){ 
> > >        ex.printStackTrace(); 
> > >    } 
> > >   } 
> > > 
> > >  public static void main(String[] args) 
> > >  { 
> > >   PDFTest test = new PDFTest(); 
> > >  } 
> > > } 
> > > /*************************************************************/ 
> > > 
> > > This file compiles with no problem.  However, when I try to run it the

> > > following errors are encountered: 
> > > 
> > > org.apache.fop.apps.FOPException 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:109) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > 
> > > --------- 
> > > 
> > > java.lang.reflect.InvocationTargetException: 
> > > org.apache.fop.apps.FOPException: 
> > > javax.xml.parsers.FactoryConfigurationE 
> > >         at 
> > >
org.apache.fop.apps.TraxInputHandler.getXMLFilter(TraxInputHandler.java:103)

> > > 
> > >         at java.lang.reflect.Method.invoke(Native Method) 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:102) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > 
> > > --------- 
> > > 
> > > --------- 
> > > 
> > > org.apache.fop.apps.FOPException: 
> > > javax.xml.parsers.FactoryConfigurationError: 
> > > com.sun.xml.parser.SAXParserFactoryImpl 
> > >         at 
> > >
org.apache.fop.apps.TraxInputHandler.getXMLFilter(TraxInputHandler.java:103)

> > > 
> > >         at java.lang.reflect.Method.invoke(Native Method) 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:102) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > 
> > > --------- 
> > > 
> > > javax.xml.transform.TransformerConfigurationException: 
> > > javax.xml.parsers.FactoryConfigurationError: com.sun.xml.parser 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:815) 
> > > 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newXMLFilter(TransformerFa
ctoryImpl.java:486) 
> > > 
> > >         at 
> > >
org.apache.fop.apps.TraxInputHandler.getXMLFilter(TraxInputHandler.java:84) 
> > > 
> > >         at java.lang.reflect.Method.invoke(Native Method) 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:102) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > --------- 
> > > javax.xml.transform.TransformerException: 
> > > javax.xml.parsers.FactoryConfigurationError: 
> > > com.sun.xml.parser.SAXParserFac 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:813) 
> > > 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newXMLFilter(TransformerFa
ctoryImpl.java:486) 
> > > 
> > >         at 
> > >
org.apache.fop.apps.TraxInputHandler.getXMLFilter(TraxInputHandler.java:84) 
> > > 
> > >         at java.lang.reflect.Method.invoke(Native Method) 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:102) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > --------- 
> > > org.xml.sax.SAXException: javax.xml.parsers.FactoryConfigurationError:

> > > com.sun.xml.parser.SAXParserFactoryImpl 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:771) 
> > > 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newXMLFilter(TransformerFa
ctoryImpl.java:486) 
> > > 
> > >         at 
> > >
org.apache.fop.apps.TraxInputHandler.getXMLFilter(TraxInputHandler.java:84) 
> > > 
> > >         at java.lang.reflect.Method.invoke(Native Method) 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:102) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > --------- 
> > > org.xml.sax.SAXException: javax.xml.parsers.FactoryConfigurationError:

> > > com.sun.xml.parser.SAXParserFactoryImpl 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newTemplates(TransformerFa
ctoryImpl.java:771) 
> > > 
> > >         at 
> > >
org.apache.xalan.processor.TransformerFactoryImpl.newXMLFilter(TransformerFa
ctoryImpl.java:486) 
> > > 
> > >         at 
> > >
org.apache.fop.apps.TraxInputHandler.getXMLFilter(TraxInputHandler.java:84) 
> > > 
> > >         at java.lang.reflect.Method.invoke(Native Method) 
> > >         at 
> > >
org.apache.fop.apps.XSLTInputHandler.getParser(XSLTInputHandler.java:102) 
> > > 
> > >         at PDFTest.<init>(PDFTest.java:29) 
> > >         at PDFTest.main(PDFTest.java:41) 
> > > 
> > > Has anyone encountered this problem before?  If so, please reply with 
> > > your solution. 
> > > Thanks in advance. 
> > > 
> > > Cheers...Paul 
> > > 
> > > --------------------------------------------------------------------- 
> > > 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] 


--------------------------------------------------------------------- 
To unsubscribe, e-mail: [EMAIL PROTECTED] 
For additional commands, email: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to