如何在Servlet响应中设置pdf标题

时间:2016-02-26 10:20:05

标签: java pdf servlets response

我正在尝试将浏览器的标题设置为PDF文档标题。 虽然pdf生成正确,但我随机获得了标题。

response.setDateHeader("Expires", 0L);

response.setHeader("Content-disposition", "inline;filename=" + title + ".pdf");

    response.setContentType("application/pdf");
    response.setContentLength(bArray.length);
    try {
                   response.getOutputStream().write(bArray);
        response.getOutputStream().close();}

有人可以帮我在这里覆盖pdf标题

4 个答案:

答案 0 :(得分:0)

在将文件发送到浏览器的同时,无法设置标题。用于浏览器更改"页面"标题,它需要实际呈现HTML文档(即它需要呈现页面)。

但是有一种解决方法可以实现它。 将其重定向到呈现标题的页面,。然后从该页面触发浏览器直到下载。

答案 1 :(得分:0)

试试这个!!!!

在html / jsp页面中:

<a href="pdf/filename.pdf">

在servlet中:

 String filename = request.getPathInfo().substring(1);//filename.pdf

你也可以通过简单的java操作从标题中删除.pdf。

答案 2 :(得分:0)

content-disposition: attachment

发现类似问题here

答案 3 :(得分:-1)

替换为您的代码

response.setHeader("Content-disposition", "attachment;filename=" + title + ".pdf");

response.setContentType("application/octet-stream");
response.setContentLength(bArray.length);
try {
               response.getOutputStream().write(bArray);
    response.getOutputStream().close();}

在此处阅读答案说明 set metadata response