gpt4 book ai didi

java - Struts 2 在下载时自动打开 .doc 或 .docx

转载 作者:行者123 更新时间:2023-11-29 03:55:58 24 4
gpt4 key购买 nike

可能是个愚蠢的问题,但我已经厌倦了谷歌搜索......

我正在开发一个 Struts 2 Web 应用程序,它允许用户编辑存储在服务器上的 .docx 文件。例如,用户点击编辑,然后文档被发送给他/她。完成编辑后,更新的文件返回到服务器。

好吧,这就是想法。我使用 Struts 2 result type="stream" 并将 contentDisposition 设置为 attachment。这显然会向用户显示“保存”对话框。 inline contentDisposition 不是 Word 文件的选项 - 浏览器无论如何都不会加载它。

问题 1:

有没有办法“静静地” "在客户端保存文件?听起来像是对我的安全威胁 - 但我可能是错的。

问题 2:
接下来,如何在客户端启动下载的.docx文件?同样,我怀疑它是否容易完成(安全性和所有这些),但我在这里也可能是错误的。 :D

我知道只要下载的文档在 Word 中自动打开,用户就可以接受保存对话框。

任何想法表示赞赏。

最佳答案

Is there a way to "silently" save the file on the client? Sounds like a security threat to me - but I might be wrong.

不使用 Struts2/HTML/JS。您需要创建一个签名的(!)小程序来执行此操作,然后将该小程序嵌入网页中。


Next, how do I start the downloaded .docx file on the client? Again, I'm dubious that it's easily done (security and all that), but I might be wrong here too.

同样在这里,使用签名的小程序。通过小程序将 File 保存在客户端后,就很简单了

Desktop.getDesktop().open(file);

只要客户端平台安装了 MS Word 并将 doc(x) 扩展与 MS Word 相关联。


作为一个完全不同的替代方案,您还可以将 MS Word 文档转换为 HTML,然后以纯 HTML 编辑表单(可以很容易地由 JSP/Struts2 生成)呈现,然后在表单提交时将其转换回MS Word 文档。这基本上也是 Google 文档正在做的事情。

关于java - Struts 2 在下载时自动打开 .doc 或 .docx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6412395/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com