如何使用JSP、Tomcat 8在Firefox中打开word文档

如何使用JSP、Tomcat 8在Firefox中打开word文档,jsp,tomcat,ms-word,Jsp,Tomcat,Ms Word,我试图在Firefox中打开现有的word文档,但没有成功。每次我点击应该打开一个新选项卡并呈现word文档的链接时,下面的窗口都会提示我 不确定这是否与技术堆栈有关,但我使用的是JSP和Tomcat8 fbr.jsp 按版本列出的功能 添加内容类型标题。在JSP代码行之前添加: 应用程序/msword 所以 首先,浏览器不知道如何在浏览器中打开Word文档(除了IE)。要在其他浏览器中实现这一点,您需要一个Flash应用程序。然后它只是作为一个预览才有意义。如果有人要编辑它,最好让它在Wo

我试图在Firefox中打开现有的word文档,但没有成功。每次我点击应该打开一个新选项卡并呈现word文档的链接时,下面的窗口都会提示我

不确定这是否与技术堆栈有关,但我使用的是JSP和Tomcat8

fbr.jsp

按版本列出的功能

添加内容类型标题。在JSP代码行之前添加:

应用程序/msword

所以


首先,浏览器不知道如何在浏览器中打开Word文档(除了IE)。要在其他浏览器中实现这一点,您需要一个Flash应用程序。然后它只是作为一个预览才有意义。如果有人要编辑它,最好让它在Word中打开

其次,从文件名中取出路径。把本地路径放在那里是没有意义的

response.setHeader("Content-disposition", "attachment; filename=istore-tax-service-read-me.docx");
第三,这不是Word文档。这是一个HTML文件

第四,这是一个空的HTML文件。身体里什么都没有。将内容配置设置为
file:///C:/nital/my-正文中的pet projects/istore/resources/istore tax service read me.docx
不会导致JSP读取该文件。如果您试图返回该文件,则必须打开并读取该文件,然后将其逐字节打印到
响应中(无需写出任何HTML)


第五,如果您从JSP返回一个真实的Word文档,您应该将
response.setHeader
放在任何输出之前。

它仍然会给我相同的提示框,然后当我从“Open with”组合框中选择MS Word时,它会打开一个完全空白的Word文档。
<%
response.setContentType("application/msword");
response.setHeader("Content-disposition", "attachment; filename=file:///C:/nital/my-pet-projects/istore/resources/istore-tax-service-read-me.docx");
%>
response.setHeader("Content-disposition", "attachment; filename=istore-tax-service-read-me.docx");