I am very new to fop - just started learning it.
1)I downloaded the fop - 0.20.5 - binary version for windows (.zip)
2)Unzipped it (D:\fop-0.20.5)
3)Trying to run D:\fop-0.20.5\fop.bat - i get o/p as mentioned in the document
4)but at the end of it i got error ->
[ERROR] No Input file specified
What's missing ? JAVA_HOME is set properly.
5)I also tried to compile one servlet (which i got it from web) - i put inside the classpath fop.jar and all other jars those inside fop.bat. But i am getting errors
----------------------------------------------------------------------------------------------------------------------
import org.apache.fop.apps.Driver;
import org.apache.fop.apps.XSLTInputHandler;
import org.apache.fop.render.Renderer;
import org.apache.avalon.framework.logger.Logger;
import org.apache.avalon.framework.logger.ConsoleLogger;
import org.apache.fop.apps.XSLTInputHandler;
import org.apache.fop.render.Renderer;
import org.apache.avalon.framework.logger.Logger;
import org.apache.avalon.framework.logger.ConsoleLogger;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import java.io.IOException;
import java.io.ByteArrayOutputStream;
import java.util.logging.Level;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import java.io.IOException;
import java.io.ByteArrayOutputStream;
import java.util.logging.Level;
public class FOPServlet extends HttpServlet
{
private String xmlFile = "data.xml";
private String xslFile = "pdfGen.xsl";
protected void doGet(HttpServletRequest httpServletRequest, HttpServletResponse
httpServletResponse) throws ServletException, IOException
{
// set up a FOP driver
Driver driver = new Driver();
// set up the logger for the driver
Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO);
driver.setLogger(logger);
httpServletResponse) throws ServletException, IOException
{
// set up a FOP driver
Driver driver = new Driver();
// set up the logger for the driver
Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO);
driver.setLogger(logger);
try
{
//set the renderer to be PDF
driver.setRenderer(Driver.RENDER_PDF);
{
//set the renderer to be PDF
driver.setRenderer(Driver.RENDER_PDF);
//create the input from the XSLT transform
XSLTInputHandler inputHandler = new XSLTInputHandler(xmlFile, xslFile);
XSLTInputHandler inputHandler = new XSLTInputHandler(xmlFile, xslFile);
// now prepare the outputStrean
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
//set the driver outputStream
driver.setOutputStream(outStream);
driver.setOutputStream(outStream);
//do the XSLT
driver.render(inputHandler.getParser(), inputHandler.getInputSource());
driver.render(inputHandler.getParser(), inputHandler.getInputSource());
//now that the content is written in the output stream,
//get ready to send the response back to browser
byte[] content = outStream.toByteArray();
httpServletResponse.setContentLength(content.length);
// set the MIME-TYPE
httpServletResponse.setContentType("application/pdf");
//write the content
httpServletResponse.getOutputStream().write(content);
httpServletResponse.getOutputStream().flush();
//get ready to send the response back to browser
byte[] content = outStream.toByteArray();
httpServletResponse.setContentLength(content.length);
// set the MIME-TYPE
httpServletResponse.setContentType("application/pdf");
//write the content
httpServletResponse.getOutputStream().write(content);
httpServletResponse.getOutputStream().flush();
} catch (Exception e)
{
e.printStackTrace();
}
{
e.printStackTrace();
}
}
}
--------------------------------------------------------------------------------------------------------
I am getting following:
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:1: package org.apache.fop.apps does not exist
import org.apache.fop.apps.Driver;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:2: package org.apache.fop.apps does not exist
import org.apache.fop.apps.XSLTInputHandler;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:3: package org.apache.fop.render does not exist
import org.apache.fop.render.Renderer;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:4: package org.apache.avalon.framework.logger does not exist
import org.apache.avalon.framework.logger.Logger;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:5: package org.apache.avalon.framework.logger does not exist
import org.apache.avalon.framework.logger.ConsoleLogger;
^
import org.apache.fop.apps.Driver;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:2: package org.apache.fop.apps does not exist
import org.apache.fop.apps.XSLTInputHandler;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:3: package org.apache.fop.render does not exist
import org.apache.fop.render.Renderer;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:4: package org.apache.avalon.framework.logger does not exist
import org.apache.avalon.framework.logger.Logger;
^
D:\jakarta-tomcat-5.0.25\webapps\rr_lesson_1\WEB-INF\classes\FOPServlet.java:5: package org.apache.avalon.framework.logger does not exist
import org.apache.avalon.framework.logger.ConsoleLogger;
^
Please can anybody give me clue about it ? What am i doing wrong ?
regards
Manisha
Do you Yahoo!?
Meet the all-new My Yahoo! – Try it today!