iis。关于js调用并打开服务器上的word文档

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iis。关于js调用并打开服务器上的word文档相关的知识,希望对你有一定的参考价值。

请教一下,。在iis里面,我的应用程序设置了匿名登身份验证,客户端打开服务器上面的word文档其属性是只读的,做的更改无法保存到服务器上,如果是设置了windows身份验证,该word文档是可编辑的,做的更改直接保存到服务上,,,我已经给这个文件夹添加了everyone角色,完全控制,可是打开的文档还是只读。,,这个该怎么解决? 我写的是一个js调用office插件打开word的程序,发布到iis上面

参考技术A 1、word的打开是独占的,你不能同时对一个程序多次打开,所以理论上你的程序只能一个人用
2、这也不是js能做得了得,js控制不了服务器端
参考技术B 我也碰到这个问题了,你解决了吗?

Java动态填充word文档并上传到服务器

 

一、 需求背景

 

  在一些特殊应用场合,客户希望在服务器上生成文档的同时并填充数据,客户端的页面不显示打开文档,但是服务器上生成文档对服务器压力很大,目前服务器上生成文档第一种就是方式是jacob, 但是局限于windows平台,往往许多JAVA程序运行于其他操作系统,在此不讨论该方案。二是POI。 但是它的excel处理还凑合, word模块还局限于读取word的文本内容,写word文件的功能就更弱;还有一个要命的地方,处理doc格式和处理docx格式的类几乎完全不同,要分开针对不同的格式写不同的代码,这就意味着用户上传的docx格式文件如果使用了doc的扩展名,程序马上崩溃。而且个人认为poi结构混乱,编码比较复杂,开发过程非常消耗时间和精力。PageOffice提供了FileMakerCtrl组件,FileMakerCtrl是在客户端生成文档并上传到服务器,但是不会在Web网页里显示word文档,因此采用FileMakerCtrl生成word文件有两个优点:1. 在客户端生成word文档,不会对服务器造成任何压力;2. 生成的文档属于标准的word文档格式。

 

二、 核心代码

 

  1.制作模板,打开word模板文件,在文件中插入书签:PO_company、PO_year、PO_number,如下图所示:

 

  

 

  2. 动态填充word文档并上传到服务器

 

复制代码
    FileMakerCtrl fmCtrl = new FileMakerCtrl(request);
    //设置PageOffice的服务页面
    fmCtrl.setServerPage(request.getContextPath()+"/poserver.zz");    
    WordDocument doc = new WordDocument();
    //给数据区域赋值,即把数据填充到模板中相应的位置
    doc.openDataRegion("PO_company").setValue("北京某某软件有限公司  ");
    doc.openDataRegion("PO_year").setValue("2018");
    doc.openDataRegion("PO_number").setValue("008");
    fmCtrl.setWriter(doc);
    //设置用来接收生成的文档的action方法或RequestMapping方法
    fmCtrl.setSaveFilePage("/SaveFile"); 
    fmCtrl.fillDocument("doc/template.doc", DocumentOpenType.Word);
复制代码

 

  3. 编写SaveFilePage指向的action或RequestMapping方法的代码,接收客户端上传的文件流

 

    FileSaver fs = new FileSaver(request, response);
    String fileName = "myfile.doc" ;
    fs.saveToFile(request.getSession().getServletContext().getRealPath("/") +"/"+ fileName);
    fs.close();

 

  4. 生成的word文件效果。

 

  

 

三、 相关下载

 

  访问下面的地址下载PageOffice for Java 开发包,部署Samples4示例之后参考示例:二、13、FileMaker转换单个文档(以Word为例)

 

  http://www.zhuozhengsoft.com/dowm/

 

以上是关于iis。关于js调用并打开服务器上的word文档的主要内容,如果未能解决你的问题,请参考以下文章

IIS 调用Microsoft.Office.Interop.Word.Documents.Open 返回为null

word2016打开2007文档出错

Word Office Js更新文档Word,压缩并检查

Java怎么操作OpenOffice创建word文档并向其设置内容

Word文档中如何增加多行文字水印?求解答

IIS无法打开PHP文件