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

1.    描述:最近项目有个在线编辑office 办公文档的功能, 采用的方案是用 pageoffice 在线编辑 office 文档. 因为高版本的谷歌和火狐不支持任何插件了.所以pageoffice 用pobrowser方法间接弹出一个ie浏览器来实现.弹出的页面称作子页面. 原来的页面称作父页面.

最近有个需求. 在线保存文档之后,需要返回一个自定义值,并且把这个值传到父页面中. 回调父页面中的js函数

2.    核心代码

(1) 保存成功后设置自定义的返回值

java 集成 pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面_第1张图片

(2)页面获取自定义的返回值

java 集成 pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面_第2张图片

(3)关闭弹出窗口的js

java 集成 pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面_第3张图片

(4)回调父页面js函数的方法

java 集成 pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面_第4张图片

3:具体的实现过程

父页面 index.jsp



			



		
		打开文件
	
	

文档页面

<%@ page language="java"
	import="java.util.*,com.zhuozhengsoft.pageoffice.*,com.zhuozhengsoft.pageoffice.wordwriter.*"
	pageEncoding="UTF-8"%>
<%@page import="java.awt.Color"%>
<%
	
	PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);
	//设置服务器页面
	poCtrl.setServerPage(request.getContextPath() + "/poserver.zz");
	//添加自定义按钮
	poCtrl.addCustomToolButton("保存", "Save", 1);
	//设置保存页面
	poCtrl.setSaveFilePage("SaveFile.jsp");
	//打开Word文档
	poCtrl.webOpen("test.doc", OpenModeType.docNormalEdit, "张佚名");
%>


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

保存页面

<%@ page language="java" import="java.util.*,com.zhuozhengsoft.pageoffice.*" pageEncoding="utf-8"%>
<%
FileSaver fs=new FileSaver(request,response);
fs.saveToFile("d:\\aa.doc");
fs.setCustomSaveResult("ok");
fs.close();
%>

 

4:具体效果

java 集成 pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面_第5张图片

java 集成 pageoffice 在线编辑 word 文档,保存之后返回自定义的值,并把值传到父页面_第6张图片

你可能感兴趣的:(word,java)