相关疑难解决方法(0)

如何在JAX-RS中设置响应头,以便用户看到Excel的下载弹出窗口?

我编写了使用REST JAX-RS生成Excel文件的代码,并确认生成的Excel文件位于GlassFish服务器目录中.

但我的目标是当用户点击按钮(生成Excel .xls)时,我想要下载弹出窗口,询问用户是否保存或打开.xls文件,就像任何其他Web服务用于下载任何类型的文件一样.

根据我的搜索,步骤是:

  1. 生成Excel .xls(DONE)

  2. 将excel写入流

  3. 在JAX-RS文件中,将响应头设置为类似的,

    String fileName ="Blah_Report.xls"; response.setHeader("Content-Disposition","attachment; filename ="+ fileName);

我的问题是我在JAX-RS文件中做了所有这些,而且我没有可用的HttpServletResponse对象.

根据Add Response Header到JAX-RS Webservice的答案

他说:

您可以通过Web服务中的@Context注释注入对实际HttpServletResponse的引用,并使用addHeader()等来添加标头.

如果没有示例代码,我无法确切地说明这意味着什么.

java rest header jax-rs glassfish-3

47
推荐指数
2
解决办法
10万
查看次数

标签 统计

glassfish-3 ×1

header ×1

java ×1

jax-rs ×1

rest ×1