gpt4 book ai didi

java - 命名我的内嵌 pdf

转载 作者:行者123 更新时间:2023-12-01 15:02:47 25 4
gpt4 key购买 nike

我正在 java servlet 中创建一个 pdf,当我创建的 pdf 打开时,它错误地以我的 servlet 命名该 pdf。这是我的代码:

     response.setHeader(contentDisposition, "inline; filename=TemporaryVerification.pdf");

try {

reader = new PdfReader(CreateStuVerification.class.getResource("/resource/" + tempFile));
stamp = new PdfStamper(reader, response.getOutputStream());

所以我希望我的pdf被命名为“TemporaryVerification.pdf”,但它的名称是“CreateStuVerification.pdf”(这是我的servlet的名称)。有谁知道这是为什么,以及如何纠正它?

编辑:我必须将其保留为内联 pdf。尽管当我尝试将其作为附件时,它的命名是正确的。

最佳答案

此行为特定于 IE 浏览器。它使用 URI 路径的最后部分作为下载资源的默认名称。更理智的浏览器会正确使用 Content-Disposition header 的 filename 属性来实现此目的。

您最好将您的 servlet 重新映射到路径模式(例如 /pdf/*),然后将所需的文件名直接附加到 URL,该 URL 应该像这样返回 PDF

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

如果需要,您可以按如下方式获取 servlet 中的文件名部分:

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

关于java - 命名我的内嵌 pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13402914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com