Hi

Here's the sample code: ( I just provided the part of the code to understand the fop 
driver functionality.)
(fop has its own sample servlet application to understand.)
XSLT file has xsl:fo tags which produce customized PDF reports.

Regards
Madhavan


import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.sax.SAXResult;
import javax.xml.transform.Templates; 


import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;

import org.apache.fop.apps.Driver;
import org.apache.fop.apps.Version;
import org.apache.fop.apps.XSLTInputHandler;
import org.apache.fop.tools.xslt.XSLTransform;
//import org.jfor.jfor.converter.Converter;
//import org.jfor.jfor.converter.IConverterOption;
import java.io.*;

import org.w3c.dom.Document;


// Imported java classes
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.Reader;
import java.io.File;
import java.io.StringReader;
import java.io.Writer;
import java.io.StringWriter;
import java.io.FileInputStream;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

/**
 * takes XML  and XSL as file input parameters and returns the formatedResult object
 */
  public FormattedResult formatDataOriginal(String strXML, String strXSL) throws 
TransformerException, TransformerConfigurationException,
                                FileNotFoundException, IOException
  {
        
          
          
          logger.debug("FormatDataWorksWell!!!! -----+++++: ");
          FormattedResult FR = new FormattedResult();
      ByteArrayOutputStream out = new ByteArrayOutputStream();
      
      try {
        
      Driver driver = new Driver();
      //driver.setLogger(log);
      driver.setOutputStream(out);
          driver.setRenderer(Driver.RENDER_PDF);
          
          String parserName=driver.getParserClassName();
          logger.debug("Format Data ---Parser Name--+++++: "+parserName);
          
          //Setup XSLT
      TransformerFactory factory = TransformerFactory.newInstance();
      Transformer transformer = factory.newTransformer(new StreamSource(strXSL));
          
          //Setup input for XSLT transformation
      StreamSource src = new StreamSource(new java.io.StringReader(strXML));
          
          //Resulting SAX events (the generated FO) must be piped through to FOP
      SAXResult res = new SAXResult(driver.getContentHandler());
      
      //Start XSLT transformation and FOP processing
      transformer.transform(src, res);
      
      byte[] content = out.toByteArray();       
          
          return FR;
                
      } catch (Exception ex) {
                        logger.debug("Error:"+ex.getMessage());
                        return null;
        }
      

  }


-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]
Sent: Wednesday, January 22, 2003 12:32 AM
To: [EMAIL PROTECTED]
Subject: RE: XML to PDF(need sample servlet code...)


Hi,
Do u have any sample code of a servlet that does the same?I tried to use the 
FOP servlet given with FOP distribution..But i keep on getting null pointer 
exceptions...

Any help will be appreciated..

regards,
Shirish.

-----Original Message-----
From: madhavan [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, January 22, 2003 12:45 AM
To: struts-user
Cc: madhavan
Subject: [OT}RE: XML to PDF


Hi

I used Apache FOP and XSLT to convert XML to pdf.

Regards
Madhavan

-----Original Message-----
From: V. Cekvenich [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, January 21, 2003 2:27 PM
To: [EMAIL PROTECTED]
Subject: Re: XML to PDF


Yet another alternative:
JasperReports and iText.

Yan, Charlene wrote:
> Hello all,
> 
> I just got assigned to convert XML to pdf to do reports.  Is any of you 
working on it?  Any insights where I should get started my research?  I am 
looking at xmlmil and aparche xml home right now.
> 
> Thanks in advance for your help!
> 
> Charlene



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>



--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to