仿百度文库方案[openoffice.org 3+swftools+flexpaper](一) 之 tomcat6.0+jdk1.6环境配置

原文出处:http://www.cnblogs.com/star-studio/archive/2011/12/09/2281807.html

本方案是笔者在网络上收集前人智慧,以及辛苦奋斗探索几周完成的成果。

由于网络上,大部分资料、文章都比较零碎、重复、不够全面。寻找全面系统的介绍该方案的资料实属不易。

本文从一个只会net、jsp零基础的开发者的角度,全面、琐碎的进行总结。

 

什么叫仿百度文库方案?

用户上传一个文档,格式有可能是doc、docx、xls、ppt、pdf 等。其他用户在前台查看的却是一个swf格式的flash文档。

flash文档可以起到防止用户下载,以及良好的浏览体验。

具体流程:

      1.调用openoffice.org 的系统服务将office文档转换为pdf

      2.调用swftools将pdf转换为swf

      3.前台使用flexpaper浏览swf文件

 

为什么不用flashpaper+net?

flashpaper转换非常简单,直接就可以将office文档转换为swf文件。

但是,笔者在测试flashpaper转换时,只能将txt、ppt成功转换为swf。却无法转换doc、xls等文档。

笔者查看进程时,发现转换doc、xls时,flashpaper的进程内存压根就没有变化跳动。笔者估计它吖的压根就没有进行转换。

奈何笔者道行浅薄,无法解决此问题。遂放弃此方案。也许,收费版的可以成功转换。

 

本方案的一些缺点

1.OpenOffice对Microsoft Office有部分兼容问题,如果是客户端要求很严格,必须百分百转换成功的话,请不要选择此方案,

以免给自己烦恼和苦恼! 

 

ASP+本方案

必须有服务器才可以配置java环境吧。笔者是先在asp上传文档后,在后台用response.write写一个ajax请求或iframe,

把完整的文档路径发送到文件转换器页面进行转换。

可能的形式如下:

response.Write("<iframe frameborder=0 framespacing=0 width=0 height=0 scrolling=no src=http://ip:8080/swfserver/DocConverter.jsp?upath=F:/网站根目录/uploaddoc/20120101.xls></iframe>")

 

第一步,tomcat6.0+jdk1.6环境配置

由于笔者是个jsp零基础的菜鸟。先从开发运行环境配置起。

这里笔者下载的是安装版:apache-tomcat-6.0.26.exe,jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe

  1.首先安装jdk,安装以后,需要配置环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量

(假定你的jdk安装在C:\Program Files\Java):

  JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10

  classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;    (.;一定不能少,因为它代表当前路径)

      path=%JAVA_HOME%\bin

接着可以写一个简单的java程序来测试JDK是否已安装成功:

      public class Test{ 
    public static void main(String args[]){ 
      System.out.println("This is a test program."); 
    } 
  }

将上面的这段程序保存为文件名为Test.java的文件。 
然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令 
    javac Test.java 
    java Test 
此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。

    2.接下来安装Tomcat,安装以后,配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量

(假定你的tomcat安装在c:\tomcat):

    CATALINA_HOME:C:\Program Files\Apache Software Foundation\Tomcat 6.0

    CATALINA_BASE:C:\Program Files\Apache Software Foundation\Tomcat 6.0

    TOMCAT_HOME: C:\Program Files\Apache Software Foundation\Tomcat 6.0

然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet.jar追加到classpath中去,修改后的classpath如下:

    classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar;

【注意最新版本的Tomcat中可能没有common这个文件夹了。所以servlet-api.jar应该的路径为%CATALINA_HOME%\lib\servlet-api.jar;

请根据自己的情况自己修改!】

接着可以启动tomcat,在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。

    3.建立自己的jsp app目录

        1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;

        2.在webapps目录下新建一个目录,起名叫myapp;

        3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;

        4.WEB-INF下新建一个文件web.xml,内容如下:

         <?xml version="1.0" encoding="ISO-8859-1"?>


    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
        "http://java.sun.com/dtd/web-app_2_3.dtd">


    <web-app> 
      <display-name>My Web Application</display-name>

      <description> A application for test. </description> 
    </web-app>

      5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:

       <html>
   <body>
     <center> 
      Now time is: <%=new java.util.Date()%> 
     </center>
   </body>
   </html>

      6.重启Tomcat

      7.打开浏览器,输入http://localhost:8080/myapp/index.jsp 看到当前时间的话说明就成功了。

    4.建立自己的servlet

       写入你的第一个Servlet:

       在你新建的Application myapp/WEB-INF/classes/test目录下新建HelloWorld.java

  package test;
  import java.io.*;
  import javax.servlet.*;
  import javax.servlet.http.*;
  public class HelloWorld extends HttpServlet
  {
      public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException
     {
        response.setContentType("text/html");

      PrintWriter out = response.getWriter();
        out.println("<html><head><title>");
        out.println("This is my first Servlet");
        out.println("</title></head><body>");
        out.println("<h1>Hello,World!</h1>");
        out.println("</body></html>");
     }

  }
然后照样用javac HelloWorld.java来编译这个文件,如果出现无法import javax.servlet.*

那么就是应该把C:\Tomcat\common\lib里面的servlet-api.jar文件拷贝到C:\JDK\jre\lib\ext中,再次编译,就没有问题了!

 

 仿百度文库方案[openoffice.org 3+swftools+flexpaper](一) 之 tomcat6.0+jdk1.6环境配置

 仿百度文库方案[openoffice.org 3+swftools+flexpaper](二) 之 安装openoffice.org

 仿百度文库方案[openoffice.org 3+swftools+flexpaper](三) 之 使用JODConverter将office文档转换为pdf

你可能感兴趣的:(OpenOffice)