当我发送由iText在servlet中生成的PDF文件时,我想显示另存为对话框。我怎样才能做到这一点?
答案 0 :(得分:7)
您需要让servlet将Content-Disposition
标头设置为attachment
。
response.setHeader("Content-Disposition", "attachment; filename=\"" + filename + "\"");
这将强制另存为对话框,最终用户可以在其中选择位置。
请注意,最终用户可能已更改其浏览器设置以对PDF文件执行默认操作,例如始终在Reader中显示或始终将它保存在一些固定的位置。在例如Firefox中,您可以通过工具>来控制它。选项>应用。不,您无法在服务器端更改此浏览器特定的行为。
答案 1 :(得分:0)
好的我解决了我的问题!!我在这个页面上找到了: http://www.geek-tutorials.com/java/itext/servlet_jsp_output_pdf.php
该方法是直接使用getOutputStream()(不在文件路径中)编写并发送内容类型标题!
response.setContentType("application/pdf");
Document document = new Document();
try{
PdfWriter.getInstance(document,
response.getOutputStream());
//pdf generate code
这很简单......