如何在浏览器

时间:2015-09-09 10:08:59

标签: java servlets

在我的servlet中,我使用下面的代码在浏览器中打开PDF文件,而是显示下载对话框。

我做错了什么?

response.setContentType("application/pdf");
out = response.getWriter();
String filepath = "D:/MyFolder/PDF/MyFile.pdf";

response.setHeader("Content-Disposition", "inline; filename=" + filepath + ";");
FileOutputStream fileOut = new FileOutputStream("D:/MyFolder/PDF/MyFile.pdf");

fileOut.close();
out.close();

4 个答案:

答案 0 :(得分:6)

您必须使用以下配置设置响应类型: -

File outPutFile=new File(generatedFile);
stream = response.getOutputStream();
response.setContentType("application/pdf");
response.setHeader("Content-Disposition", "inline; filename=\"" + filename + "\"");
response.setContentLength((int) outPutFile.length());

答案 1 :(得分:1)

你可以尝试用

做同样的事情
response.setHeader("Content-Disposition", "attachment;filename="+filepath+";");

答案 2 :(得分:0)

This是相关的

您的浏览器是Firefox吗? This可能是相关的

答案 3 :(得分:0)

你需要这个:

-sw640dp-xhdpi

否则,浏览器会提示您打开/保存。 (如果内容类型是八位字节流,或内容处置是附件)

如果你想在选项卡中显示pdf,你需要在html(或angular,jsp,你使用的任何框架)中设置target =“_ blank”。