从 html 页面下载文件无效

download file from html page not working

我在 Jboss 7.

上传了新应用

除其他功能外,该应用程序还可以创建文件、保存文件并使用 html5 标签下载。 生成后,文件保存在我从中获取的绝对路径上 getServletContext().getRealPath("/");

根据服务器日志,我可以看出这些操作已完美完成。 文件已创建并保存。 问题出在下载部分。

我正在尝试下载带有 html5 标签的文件。 <a href=path+file name> download>Get Numbers!</a>

我使用的路径与我在服务器上保存文件时使用的路径完全相同,但我不断从 Chrome.

收到 fail-no file 错误

想法?

I am using exactly the same path that I used to save the file on the server

有问题。您的文件路径是这样的:

/opt/repo/versions/7.1/standalone/tmp/vfs/tempc56e386fb58c08a8/SlL.war-269‌​016b5c31c942c/serial.xls

从文件系统获取文件时,在服务器上没问题。但这条路径对网络浏览器来说毫无意义。 Web 浏览器正在向 Web 服务器请求 Web 服务器已知的文件

因此,例如,如果您的 Web 服务器根目录位于此处:

/opt/mywebserver

然后那个路径最终请求这个:

/opt/webserver/opt/repo/versions/7.1/standalone/tmp/vfs/tempc56e386fb58c08a8/SlL.war-269‌​016b5c31c942c/serial.xls

该文件不存在,因此网络服务器响应 404 错误。

您需要将 文件系统 路径转换为 ​​URL 以便在标记中使用它。 (并且该路径需要在其自己的路径结构中对网络服务器公开可见。)