Hi,
Ive attached the Java class, (and included it at the bottom incase
attachment fails to send).
There are two methods, and they both require the HttpServletResponse. It
provides options for either sending it the XML and XSL as files or strings.
Ensure that you have copied the following jar files into your
TOMCAT_HOME\lib directory:
* avalon-framework-cvs-20020315.jar
* batik.jar
* fop.jar
which are all found in the Apache FOP distribution.
Hope it help.
Ken
-
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import javax.xml.transform.*;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.sax.SAXResult;
import org.apache.fop.apps.Driver;
import org.apache.fop.apps.Version;
import org.apache.fop.apps.XSLTInputHandler;
import org.apache.fop.messaging.MessageHandler;
public class ConvertToPDF
{
private TransformerFactory xsltFact = TransformerFactory.newInstance();
public ConvertToPDF()
{
//Default Constructor
}//Constructor()
public void convertXmlToPDF( String xmlsource, String xslsource,
HttpServletResponse response )
{
response.setContentType(application/pdf);
try {
Reader xmlReader = new StringReader(xmlsource);
Reader xslReader = new StringReader(xslsource);
Source xml = new StreamSource(xmlReader);
Source xsl = new StreamSource(xslReader);
Driver driver =new Driver();
driver.setOutputStream(response.getOutputStream());
driver.setRenderer(Driver.RENDER_PDF);
Transformer transformer =
TransformerFactory.newInstance().newTransformer(xsl);
transformer.transform(xml, new SAXResult(driver.getContentHandler()));
}//try
catch (Exception ex) {
ex.printStackTrace();
}//catch
}//convertXmlToPDF()
public void convertXmlToPDF( String xmlsource, File xslPath,
HttpServletResponse response )
{
response.setContentType(application/pdf);
try {
Reader xmlReader = new StringReader(xmlsource);
Source xml = new StreamSource(xmlReader);
Source xsl = new StreamSource(xslPath);
Driver driver =new Driver();
driver.setOutputStream(response.getOutputStream());
driver.setRenderer(Driver.RENDER_PDF);
Transformer transformer =
TransformerFactory.newInstance().newTransformer(xsl);
transformer.transform(xml, new SAXResult(driver.getContentHandler()));
}//try
catch (Exception ex) {
ex.printStackTrace();
}//catch
}//convertXmlToPDF()
}//End all
-
_
Use MSN Messenger to send music and pics to your friends
http://messenger.msn.co.uk
ConvertToPDF.java
Description: java/
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]