[原创]java对word文档的在线打开

一、材料准备

  百度一下:PageOffice,从官网下载PageOffice for Java。压缩包文件:

  

二、 实现步骤:

  1. 打开“集成文件”目录,拷贝“WEB-INF\lib”目录中的pageoffice4.4.0.2.jar到自己项目的“WEB-INF\lib”目录

  2. 参考“集成文件”文件夹中的 web.xml文件,配置一下自己 Web项目中的web.xml文件,也可以直接把下面的这段配置添加到自己的web.xml中;

    <!-- PageOffice Begin -->
    <servlet>
        <servlet-name>poserver</servlet-name>
        <servlet-class>com.zhuozhengsoft.pageoffice.poserver.Server</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>poserver</servlet-name>
        <url-pattern>/poserver.zz</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>poserver</servlet-name>
        <url-pattern>/sealsetup.exe</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>poserver</servlet-name>
        <url-pattern>/posetup.exe</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>poserver</servlet-name>
        <url-pattern>/pageoffice.js</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>poserver</servlet-name>
        <url-pattern>/jquery.min.js</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>poserver</servlet-name>
        <url-pattern>/pobstyle.css</url-pattern>
    </servlet-mapping>
    <!-- PageOffice End-->

  3. 在显示文件列表的页面(比如:doclist.jsp)添加pageoffice.js文件的引用和打开文件的超链接“在线打开Word”:

<script type="text/javascript" src=" jquery.min.js"></script> 
<script type="text/javascript" src=" pageoffice.js" id="po_js_main"></script>
......
<a href="javascript:POBrowser.openWindowModeless(/word.jsp','width=1200px;height=800px;');">在线打开Word</a>

  4. 在调用PageOffice产品的页面(比如:word.jsp)添加 import 包:com.zhuozhengsoft.pageoffice.*

  5. 编写PageOffice的调用代码,在线打开文件(比如:服务器D盘根目录下的1.doc):

    PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); 
    poCtrl1.setServerPage("poserver.zz"); //此行必须 
    poCtrl1.setSaveFilePage("savefile.jsp");//如要保存文件,此行必须 
    //打开文件 
    poCtrl1.webOpen("D:\\1.doc", OpenModeType.docNormalEdit, "用户名"); 

  6.在 html代码的 body中需要出现office 界面的位置插入下面的代码:

<%=poCtrl1.getHtmlCode("PageOfficeCtrl1")%>

  7. 在处理文件保存的action方法或RequestMapping方法或jsp页面里(比如:savefile.jsp)中添加处理文件保存的代码:

  FileSaver fs=new FileSaver(request,response);
  fs.saveToFile("d:\\1.doc");
  fs.close();

  8. 启动运行项目,访问文件列表的页面(比如:doclist.jsp),点击“在线打开Word”的超链接即可查看在线打开编辑保存word文件的效果。

三、参考资料和示例 

  1. 部署PageOffice示例:拷贝 Samples4 文件夹到 Tomcat 的 Webapps 目录下,访问:http://localhost:8080/Samples4/index.html
  2. 参考 基础功能示例:一、2、以磁盘路径方式打开Office文件(以Word为例)

posted @ 2018-05-02 13:47  大方无隅  阅读(3266)  评论(0编辑  收藏  举报