PageOffice简介
PageOffice实现了在线编辑保存Word、Excel、PPT、WPS等Office文档的基本功能,对于简单的在线Office办公、追踪Word修订痕迹、全文检索的实现已经绰绰有余。 PageOffice是市场上唯一一款能够同时支持IE、谷歌Chrome、火狐Firefox、搜狗、360等所有流行浏览器的在线Office组件/文档控件。磐石般的运行稳定性,复杂客户机环境下的广泛兼容性,客户端傻瓜式安装,惬意的用户在线Office体验,这一切都是PageOffice为您带来的意想不到的惊喜和震撼
项目集成
- 新建StringBoot+Thymeleaf项目 ,新建StringBoot项目有好多种方式和工具,直接百度下就有;
- 下载PageOffice插件jar包 到PageOffice官网选择你需要的版本进行下载,本人用的是4.5的版。PageOffice官网下载;
- 导入jar包 打开刚下载好的文件找到lib文件夹拷贝到项目下
4. pom文件中导入依赖
<!-- 添加Sqlite依赖(可选:如果不需要使用印章功能的话,不需要添加此依赖)-->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.7.2</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/web/WEB-INF/lib/pageoffice4.5.0.3.jar</systemPath>
</dependency>
<!-- 添加PageOffice依赖(必须) -->
<dependency>
<groupId>com.zhuozhengsoft</groupId>
<artifactId>pageoffice</artifactId>
<version>4.5.0.3</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/web/WEB-INF/lib/pageoffice4.5.0.3.jar</systemPath>
</dependency>
5.修改web.xml文件,打开下载文件的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>
<servlet>
<servlet-name>adminseal</servlet-name>
<servlet-class>com.zhuozhengsoft.pageoffice.poserver.AdminSeal</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>adminseal</servlet-name>
<url-pattern>/adminseal.zz</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>adminseal</servlet-name>
<url-pattern>/loginseal.zz</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>adminseal</servlet-name>
<url-pattern>/sealimage.zz</url-pattern>
</servlet-mapping>
<mime-mapping>
<extension>mht</extension>
<mime-type>message/rfc822</mime-type>
</mime-mapping>
<context-param>
<param-name>adminseal-password</param-name>
<param-value>111111</param-value>
</context-param>
<!-- PageOffice End -->
6.在项目指定目录下新建word文档,新建html 我在静态文件下新建的word文档
index.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- office插件js begin 必须引入-->
<script type="text/javascript" th:src="@{/jquery.min.js}" ></script>
<script type="text/javascript" th:src="@{/pageoffice.js}" id="po_js_main"></script>
<!-- end -->
</head>
<body>
<a href="javascript:POBrowser.openWindowModeless('office/edit', 'width=1000px;height=auto;');"> 打开文档</a>
</body>
</html>
word.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div style="width:1000px;height:800px;" th:utext="${pageoffice}"></div>
</body>
</html>
test.doc
7.在启动类授权服务
在配置文件中定义变量
@SpringBootApplication
public class DemoApplication {
@Value("${poSysPath}")
String poSysPath;
/**
* 添加PageOffice的服务器端授权程序Servlet(必须)
*
* @return
*/
@Bean
public ServletRegistrationBean servletRegistrationBean() {
com.zhuozhengsoft.pageoffice.poserver.Server poserver = new com.zhuozhengsoft.pageoffice.poserver.Server();
//设置PageOffice注册成功后,license.lic文件存放的目录
poserver.setSysPath(poSysPath);
ServletRegistrationBean srb = new ServletRegistrationBean(poserver);
srb.addUrlMappings("/poserver.zz");
srb.addUrlMappings("/posetup.exe");
srb.addUrlMappings("/pageoffice.js");
srb.addUrlMappings("/sealsetup.exe");
return srb;
}
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
到这里就完成了,启动项目,下面就是测试
点击打开文档,会出现提示安装,点击确定,根据提示安装
安装成功后再次访问
到现在项目已经简单的集成了pageoffice插件中的word文档编辑保存工作
注意:PageOffice插件初次安装需要注册,注册码在文件包下面的序列号.txt文件中
只支持开发使用,正式使用需要购买
本人demo链接地址;