no longer used...functionality moved to OpenMir
authorjohn <john>
Tue, 28 May 2002 16:26:49 +0000 (16:26 +0000)
committerjohn <john>
Tue, 28 May 2002 16:26:49 +0000 (16:26 +0000)
source/OutputMir.java [deleted file]

diff --git a/source/OutputMir.java b/source/OutputMir.java
deleted file mode 100755 (executable)
index bf64063..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-import java.io.*;
-
-import javax.servlet.*;
-import javax.servlet.http.*;
-
-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.log.*;
-
-import mir.servlet.*;
-import mir.module.*;
-import mir.misc.*;
-import mir.entity.*;
-import mir.storage.*;
-
-
-import mircoders.entity.*;
-import mircoders.storage.*;
-import mircoders.module.*;
-import mircoders.producer.*;
-
-
-
-/**
- * generate a PDF from a servlet.
- * Servlet param is:
- * <ul>
- *   <li>id: the id number of the content entity to turn into a pdf
- * </ul>
- *
- * Example URL: http://servername/servlet/OutputMir?id=66
- * Compiling: you will need 
- * - servlet_2_2.jar
- * - fop.jar
- * - sax api
- * - logkit jar
- *
- * Running: you will need in the WEB-INF/lib/ directory:
- * - fop.jar
- * - batik.jar
- * - avalon-framework-4.0.jar
- * - logkit-1.0.jar
- * - xalan-2.0.0.jar
- */
-public class OutputMir extends AbstractServlet {
-    private ModuleContent contentModule;
-    
-    public static final String ID_REQUEST_PARAM = "id";
-
-    Logger log = null;
-
-    public void doGet(HttpServletRequest request,
-                      HttpServletResponse response) throws ServletException {
-        if(log == null) {
-            Hierarchy hierarchy = Hierarchy.getDefaultHierarchy();
-            log = hierarchy.getLoggerFor("fop");
-            log.setPriority(Priority.WARN);
-        }
-       getConfig(request);
-
-       String producerStorageRoot=MirConfig.getProp("Producer.StorageRoot");
-       String producerDocRoot=MirConfig.getProp("Producer.DocRoot");
-       String templateDir = MirConfig.getPropWithHome("HTMLTemplateProcessor.Dir");
-       String xslSheet=templateDir + "/" + MirConfig.getProp("Producer.PrintableContent.html2foStyleSheetName");
-        try {
-           contentModule = new ModuleContent(DatabaseContent.getInstance());
-
-           String idParam = request.getParameter(ID_REQUEST_PARAM);
-           if (idParam != null){
-               EntityContent contentEnt = (EntityContent)contentModule.getById(idParam);
-               String publishPath = contentEnt.getValue("publish_path");
-               String foFile = producerStorageRoot + producerDocRoot + "/" +publishPath + "/" + idParam + ".fo";
-                XSLTInputHandler input = new XSLTInputHandler(new File(foFile), new File(xslSheet));
-                renderXML(input, response);
-            } else {
-                PrintWriter out = response.getWriter();
-                out.println("<html><head><title>Error</title></head>\n"+
-                            "<body><h1>OutputMir Error</h1><h3>No 'id' "+
-                            "request param given.</body></html>");
-            }
-        } catch (ServletException ex) {
-            throw ex;
-        }
-        catch (Exception ex) {
-            throw new ServletException(ex);
-        }
-    }
-
-    /**
-     * renders an FO inputsource into a PDF file which is rendered
-     * directly to the response object's OutputStream
-     */
-    public void renderFO(InputSource foFile,
-                         HttpServletResponse response) throws ServletException {
-        try {
-            ByteArrayOutputStream out = new ByteArrayOutputStream();
-
-            response.setContentType("application/pdf");
-
-            Driver driver = new Driver(foFile, out);
-            driver.setLogger(log);
-            driver.setRenderer(Driver.RENDER_PDF);
-            driver.run();
-
-            byte[] content = out.toByteArray();
-            response.setContentLength(content.length);
-            response.getOutputStream().write(content);
-            response.getOutputStream().flush();
-        } catch (Exception ex) {
-            throw new ServletException(ex);
-        }
-    }
-
-    public void renderXML(XSLTInputHandler input,
-                         HttpServletResponse response) throws ServletException {
-        try {
-            ByteArrayOutputStream out = new ByteArrayOutputStream();
-
-            response.setContentType("application/pdf");
-
-            Driver driver = new Driver();
-            driver.setLogger(log);
-            driver.setRenderer(Driver.RENDER_PDF);
-            driver.setOutputStream(out);
-            driver.render(input.getParser(), input.getInputSource());
-
-            byte[] content = out.toByteArray();
-            response.setContentLength(content.length);
-            response.getOutputStream().write(content);
-            response.getOutputStream().flush();
-        } catch (Exception ex) {
-            throw new ServletException(ex);
-        }
-    }
-
-    /**
-     * creates a SAX parser, using the value of org.xml.sax.parser
-     * defaulting to org.apache.xerces.parsers.SAXParser
-     *
-     * @return the created SAX parser
-     */
-    static XMLReader createParser() throws ServletException {
-        String parserClassName = System.getProperty("org.xml.sax.parser");
-        if (parserClassName == null) {
-            parserClassName = "org.apache.xerces.parsers.SAXParser";
-        }
-
-        try {
-            return (XMLReader) Class.forName(
-                     parserClassName).newInstance();
-        } catch (Exception e) {
-            throw new ServletException(e);
-        }
-    }
-
-}
-
-
-
-
-
-