[原创]国产UOS操作系统调用PageOffice在线编辑保存Office文档
2021/5/25 18:45:19
本文主要是介绍[原创]国产UOS操作系统调用PageOffice在线编辑保存Office文档,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
自国家大力推广国产软件以来,统信软件的UOS操作系统在软硬件适配方面不断拓展,整个生态日渐完善,已经基本满足政府、企业等日常办公需求。在Windows系统环境下,PageOffice产品积累了十多年的Office在线编辑研发经验和应用经验,现在针对UOS在线办公发布了支持国产操作系统的中间件产品PageOffice国产版,能很好的支持龙芯,兆芯,飞腾,鲲鹏,X86,ARM等不同CPU芯片架构的UOS操作系统。
PageOffice产品调用金山API接口,启动本地的WPS办公应用程序在线打开文档,支持在UOS系统中调用360、奇安信、UOS浏览器等浏览器,在线打开doc文档、电子表格、演示文稿等Office文件,进而实现嵌入式的文档编辑和控制。
对于开发人员来说,不需要额外的学习成本,就可以轻松掌握。此前集成了Windows版PageOffice的应用系统也几乎无需修改代码,平滑完成国产化版本的改版迁移。
PageOffice国产版开发包结构
- Client:此目录下是PageOffice的客户端安装程序
- Samplesgc5:此文件夹是PageOffice的Demo程序
- Server:此目录下是集成PageOffice产品所需的jar包和配置文件
集成开发步骤(SSM)
-
将“Server” 文件夹中pageoffice的jar拷贝到您自己Web项目中WEB-INF/lib目录下;
-
参考“Server” 文件夹中的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>/posetup.exe</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>poserver</servlet-name> <url-pattern>/pageoffice.js</url-pattern> </servlet-mapping> <!-- PageOffice End -->
-
在后台Controller中编写代码调用PageOffice
@RequestMapping(value="/openWord") public ModelAndView openWord(HttpServletRequest request){ PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); poCtrl1.setServerPage("poserver.zz"); //此行必须 poCtrl1.setSaveFilePage("xxxController/savefile");//设置处理文件保存的Controller方法 poCtrl1.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "张三");//打开文件 request.setAttribute("poCtrl1", poCtrl1.getHtmlCode("PageOfficeCtrl1")); ModelAndView mv = new ModelAndView("Word"); return mv; }
- 在视图html代码中获取第3步request对象中的poCtrl1,显示文档编辑区域
<div style="height:700px;width:auto;"> ${pdfCtrl1} </div>
集成开发步骤(SpringBoot)
-
如果在自己项目的根目录下创建lib文件夹,将“Server” 文件夹中pageoffice的jar拷贝到此lib目录下,那么pom.xml添加下面代码(注意修改为自己使用的pageoffice的jar包版本号):
<dependency> <groupId>com.zhuozhengsoft</groupId> <!--自定义--> <artifactId>pageoffice</artifactId> <!--自定义--> <version>5.2.0.1</version> <!--自定义--> <scope>system</scope> <!--system,类似provided,需要显式提供依赖的jar以后,Maven就不会在Repository中查找它--> <!--${project.basedir}为springboot内置属性--> <systemPath>${project.basedir}/lib/pageoffice5.2.0.1.jar</systemPath> </dependency>
如果使用mvn命令安装pageoffice的jar包到本地仓库,那么pom.xml添加下面的代码即可:
<dependency> <groupId>com.zhuozhengsoft</groupId> <!--自定义--> <artifactId>pageoffice</artifactId> <!--自定义--> <version>5.2.0.1</version> <!--自定义--> </dependency>
mvn命令安装pageoffice的jar包到本地仓库方法,参考下面地址:
https://www.kancloud.cn/pageoffice_course_group/pageoffice_course/653878
-
添加下面的PageOffice的服务器端授权程序的@Bean:
注意:poserver.setSysPath设置为一个存在的目录路径
/** * 添加PageOffice的服务器端授权程序Servlet(必须) * @return */ @Bean public ServletRegistrationBean servletRegistrationBean() { com.zhuozhengsoft.pageoffice.poserver.Server poserver = new com.zhuozhengsoft.pageoffice.poserver.Server(); poserver.setSysPath("d:/lic/");//设置PageOffice注册成功后,license.lic文件存放的目录 ServletRegistrationBean srb = new ServletRegistrationBean(poserver); srb.addUrlMappings("/poserver.zz"); srb.addUrlMappings("/posetup.exe"); srb.addUrlMappings("/pageoffice.js"); return srb; }
- 在后台Controller中编写代码调用PageOffice
@RequestMapping(value="/openWord") public ModelAndView openWord(HttpServletRequest request){ PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request); poCtrl1.setServerPage("poserver.zz"); //此行必须 poCtrl1.setSaveFilePage("xxxController/savefile");//设置处理文件保存的Controller方法 poCtrl1.webOpen("doc/test.doc", OpenModeType.docNormalEdit, "张三");//打开文件 request.setAttribute("poCtrl1", poCtrl1.getHtmlCode("PageOfficeCtrl1")); ModelAndView mv = new ModelAndView("Word"); return mv; }
- 在视图html代码中获取第3步request对象中的poCtrl1,显示文档编辑区域
<div style="height:700px;width:auto;"> ${pdfCtrl1} </div>
这篇关于[原创]国产UOS操作系统调用PageOffice在线编辑保存Office文档的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-0600-macOS和Linux安装和管理多个Python版本
- 2024-03-30[译]漫画SELinux概念
- 2024-03-29linux 移动文件
- 2024-03-28linux .so file
- 2024-03-28Linux 磁盘管理
- 2024-03-28Linux学习笔记(十三)磁盘管理(一):磁盘分区
- 2024-03-26linux 创建 文件
- 2024-03-25使用SecureCRT对Linux vim进行颜色设置
- 2024-03-202019-2020-12 20199317 《Linux内核原理与分析》 第十二周作业
- 2024-03-20Linux运维的第二周总结