重命名由Java Servlet流式传输的PDF

使用XSLT,XSL-FO和Apache FOP的正确组合,我可以将PDF发送到某个浏览器窗口。
实际上,我发送的文件内容如下:

  response.setContentType( “应用/ PDF”);
             response.setContentLength(out.size());
             response.getOutputStream()。write(out.toByteArray());
             response.getOutputStream()平齐();

正如所料,浏览器在名为“pdf”的选项卡中显示PDF内容,如果我在本地保存文件,则名称也默认为pdf.pdf
如何强制文件名?

我尝试了以下其他不起作用的东西:

            response.setHeader(“Content-Disposition”,“inline; filename =”+ filename +“。pdf”); 

为清楚起见,我想在浏览器中显示内容(而不是直接下载)

我在这里找到了解决方案

基本上,这是在web.xml中更改URL模式的问题
浏览器将使用页面名称的任何内容
我曾经有过

  PDF /pdf  

我替换了

  PDF /pdf/*  

使用http://wherever/pdf/filename.pdf?param1=va1...调用servlet将文件名更改为“filename.pdf”