如何下载我在Apache TomCat Server上动态创建的文件?

时间:2016-04-04 14:35:47

标签: java tomcat java-ee primefaces apache-poi

我使用“Apache POI”创建了一个“.xlsx”文件(CustomerData.xlsx)。

问题是该文件是在我的TomCat服务器上创建的,我必须下载它。

我尝试了以下代码,以便下载文件:

HttpServletResponse response = null;

response.setContentType("xlsx");
response.setHeader(
    "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
    "attachment; filename=C:\CustomerData.xlsx");
try {
    workbook.write(response.getOutputStream());
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

但不幸的是,它似乎不起作用。

如果您有任何想法或建议,请不要犹豫发布。

1 个答案:

答案 0 :(得分:1)

您将内容类型和附件信息混合到一个无效的单个标题中。

改为写

response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-Disposition", "attachment;filename=CustomerData.xlsx");