pageoffice实现了在线编辑office文件.在保存时我们一般要传递一个文件的原路径,用于在后台的保存方法进行保存使用.但是保存方法是跟pageoffice有一定的耦合,不能灵活进行传参.pageoffice提供了一种方式,可以通过在页面的input标签,在后面使用一个api进行接收,下面上代码,

/*** 打开在线编辑页面*/@RequestMapping("editFileInfo")public String editFileInfo(String fileId, HttpServletRequest request){PageOfficeCtrl poCtrl1 = new PageOfficeCtrl(request);poCtrl1.setServerPage(request.getContextPath() + "/poserver.zz"); // 此行必须FileInfo fileInfo = fileService.getFileInfoById(fileId);//根据自己系统获取上传文件对象//添加保存按钮poCtrl1.addCustomToolButton("保存并关闭","Save",1);//设置保存的urlpoCtrl1.setSaveFilePage("saveFileInfo");if(fileInfo == null)throw new IllegalStateException("系统找不到该文件");String  fileType = fileInfo.getType();OpenModeType openModeType = OpenModeType.docNormalEdit;     //默认docif ("xls".equals(fileType) || "xlsx".equals(fileType))openModeType = OpenModeType.xlsNormalEdit;else if ("doc".equals(fileType) || "docx".equals(fileType))openModeType = OpenModeType.docNormalEdit;else if ("ppt".equals(fileType) )openModeType = OpenModeType.pptNormalEdit;else if ("vsd".equals(fileType) )openModeType = OpenModeType.vsdNormalEdit;else if ("mpp".equals(fileType) )openModeType = OpenModeType.mppNormalEdit;User user = getCurUser();String savePath = "xxx"; //根据自己系统获取文件的实际存放路径poCtrl1.webOpen(saveFullPath.toFile().toString(), openModeType,"管理员" );poCtrl1.setCustomToolbar(false);//隐藏自定义工具栏poCtrl1.setCaption("wing");poCtrl1.setTagId("PageOfficeCtrl1"); // 此行必须request.setAttribute("poCtrl", poCtrl1);request.setAttribute("savePath",savePath );//传递文件路径到页面return "pageoffice/view/editFileInfo";}
<%PageOfficeCtrl poCtrl=(PageOfficeCtrl)request.getAttribute("poCtrl");String savePath = (String)request.getAttribute("savePath");//在后台打开编辑页面的方法中放文件路径到request域
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title>office文件编辑</title><script type="text/javascript" src=" jquery.min.js"></script><script type="text/javascript" src=" pageoffice.js" id="po_js_main"></script>
</head>
<body>
<%--用于向保存请求的方法传递参数--%>
<input id="savePath" name="savePath" type="hidden" value="<%=savePath%>"/><script type="text/javascript">//保存function Save() {document.getElementById("PageOfficeCtrl1").WebSave();window.external.close();//关闭POBrowser窗口}
</script>
<div style="width:100%; height:100%;"><%=poCtrl.getHtmlCode("PageOfficeCtrl1")%>
</div>
</body>
</html>
 //编辑后保存@RequestMapping("saveFileInfo")public  void  saveFileInfo(HttpServletRequest request, HttpServletResponse response){FileSaver fs = new FileSaver(request, response);String savePath = fs.getFormField("savePath");//获取传递的文件路径参数fs.saveToFile(savePath);fs.close();}

pageoffice在线编辑时向保存方法传递参数相关推荐

  1. pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面

    1.    描述:最近项目有个在线编辑office 办公文档的功能, 采用的方案是用 pageoffice 在线编辑 office 文档. 因为高版本的谷歌和火狐不支持任何插件了.所以pageoffi ...

  2. java main 参数传递参数_Java千问:Java语言如何给main方法传递参数?

    大家都知道,Java语言运行程序的入口方法叫做main,这个方法有一个参数,这就表示说,我们要运行主方法,就必须给main方法传递一个参数.但是,大家似乎对这个参数向来都是视而不见,从来都没给主方法传 ...

  3. tornado框架的get方法传递参数

    tornado框架的get方法传递参数,代码: # encoding: utf-8""" @version: ?? @author: andu99 @contact: a ...

  4. 国产麒麟操作系统调用PageOffice在线编辑保存WPS文档

    ​ 自国家大力推广国产软件以来,麒麟软件的麒麟操作系统在软硬件适配方面不断拓展,整个生态日渐完善,已经基本满足政府.企业等日常办公需求.在Windows系统环境下,PageOffice产品积累了十多年 ...

  5. 国产麒麟系统调用PageOffice在线编辑保存WPS文档

    ​ 自国家大力推广国产软件以来,麒麟软件的麒麟操作系统在软硬件适配方面不断拓展,整个生态日渐完善,已经基本满足政府.企业等日常办公需求.在Windows系统环境下,PageOffice产品积累了十多年 ...

  6. jsp+java用pageoffice在线编辑office文档

    首先你要有三个东西:sealsetup.exe.pageoffice.jar和posetup.exe,如果没有,就去     http://www.zhuozhengsoft.com/download ...

  7. PageOffice 在线编辑 office文件,回调父页面

    一.子页面调用父页面的方法 var value=window.external.CallParentFunc("ParentFunName(Arguments);");//父页面的 ...

  8. spring拦截器传递传递参数到controller+Aop切面环绕方法传递参数到目标方法

    一.前言 由于业务需要,在网上找了很久得到了这两种方式.本文代码偏少,主要讲解一下怎么传,如何接收,也记录一下,以便之后查看. 二.Spring拦截器传递参数到controller 下面是我拦截器中的 ...

  9. C#中在定义事件委托时怎样跨窗体传递参数

    场景 C#中委托与事件的使用-以Winform中跨窗体传值为例: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100150700 ...

  10. MyBatis学习:使用Map的方法传递参数

    1.本篇博客的背景和目的 目前我本人正在学习MyBatis框架,在原先了解并且懵懵懂懂使用的基础上,开始系统正式的学习.阐述了MVC架构模式和三层架构,明晰了在Web项目中的普遍编码层次,回顾了JDB ...

最新文章

  1. jQuery对select操作
  2. 网站主题明确需注意这三项原则!
  3. 解决prometheus k8s.gcr.io/addon-resizer:1.8.4镜像无法下载的问题
  4. TensorFlow 1.12.2 发布,修复 GIF 构造安全漏洞
  5. 前端进阶必备技能:Vue中如何定制动画效果
  6. 7-19 树种统计 (10 分)
  7. 同济大学自动化与计算机科学,同济大学本科专业选通信工程好,还是选自动化好呢?...
  8. JAVA听力源码_剑桥雅思13Test4Section4听力原文与答案 The History of Coffee
  9. VMware Workstation 6.0 正式版公布
  10. iOS之中国银联移动支付控件升级的问题
  11. Latex:WinEdt打开.tex文件时的编码问题
  12. 数据库设计实例-教务管理系统
  13. 制冷与空调设备运行操作作业题库(含答案)
  14. Github全封41万俄罗斯开发者账号,开源真的无国界
  15. 亮度,饱和度,对比度的计算方法
  16. python mht 文件转html文件
  17. CSDN情感倾向分析API——功能测试——全流程演示
  18. ISO光盘镜像导入到U盘的方法
  19. uniapp中scroll-view的下拉刷新
  20. 【微信小程序】wx.request请求后success回调的数据无法显示到页面上

热门文章

  1. Html页面点击下载文件
  2. mysql jemalloc_MySQL性能测试--jemalloc内存管理
  3. 微信订阅号改版,我有这些看法
  4. K均值(K-Means)聚类算法简介
  5. 阿里巴巴移动技术 2021 年终盘点
  6. css怎么写仿粗体,在CSS中字体加粗要怎么做?
  7. 制作一个美团饿了么外卖的cps小程序
  8. cad小插件文字刷_CAD实用小插件,这是一串让你效率提升相见恨晚的代码!
  9. js中获取当前屏幕宽度方法如下:
  10. 【双拼】双拼输入法入门指南