首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Primefaces中正确显示pdf文件名

无法在Primefaces中正确显示pdf文件名
EN

Stack Overflow用户
提问于 2018-07-13 05:13:29
回答 1查看 745关注 0票数 0

我正在开发jsf页面并使用primefaces。在执行此pdf名称时,显示"dynamiccontent.properties.xhtml“。我想要显示pdf与pdf名称。我该怎么做?

代码语言:javascript
复制
<p:dialog header="Dialog" widgetVar="dialogView" modal="false">
                <h:form id="form">
                    <h:panelGrid columns="1" cellpadding="5">
                        <p:media value="#{bean.streamedContent}"
                            player="pdf" width="1000px" height="750px">
                            <f:param name="bean.selectedFile.fileName"
                                value="#{bean.generateRandomIdForNotCaching()}" />
                        </p:media>
                    </h:panelGrid>
                </h:form>
            </p:dialog>

这是我的密码

代码语言:javascript
复制
public void showFile() {
        setStreamedContent(new DefaultStreamedContent(getData(selectedFile.getFileName()), "application/pdf",
                "downloaded_" + selectedFile.getFileName()));
    }

    private InputStream getData(String fileName) {
        File folder = new File(folderFile);
        File file = new File(folder + "\\" + fileName);

        InputStream fileView = null;
        try {
            fileView = new FileInputStream(file);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        return fileView;
    }

    public String generateRandomIdForNotCaching() {
        return java.util.UUID.randomUUID().toString();
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-13 11:28:57

您可以尝试PrimeFaces扩展文档查看器,它可以让您更多地控制如何加载PDF,并让您控制流内容的下载文件名。

下载=如果流内容,这将是下载文件的名称。注意:必须在.pdf中结束,PDF.js才能捡到它!

链接:PrimeFaces扩展文档查看器

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51318048

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档