【发布时间】:2018-02-20 05:22:51
【问题描述】:
我想在 Vaadin 视图中显示 PDF。我创建了一个 BrowserFrame 并传递了 PDF 的 StreamResource:
StreamResource streamResource = new StreamResource(
getPresenter().createPdfStreamSource(), report.getName() + ".pdf");
BrowserFrame pdf = new BrowserFrame(null, streamResource);
pdf.setSizeFull();
content.addComponent(pdf);
此代码使用以下源创建一个 iframe:
http://localhost:8080/my-app/vaadinServlet/APP/connector/0/134/source/mypdf.pdf
如果我将浏览器指向此 URL,它会正确显示 PDF。但是在我的应用程序中,PDF 视图没有显示。我究竟做错了什么?
我正在 Google Chrome 中对此进行测试。
编辑:我下载了基于 PDF.js 的插件 PDF 查看器,我的应用程序运行良好。 Chrome PDF阅读器插件需要特殊配置吗?
【问题讨论】:
-
你能显示
getPresenter().createPdfStreamSource()的来源吗? -
也许看看本书的this 部分...它是关于在你的 UI 中嵌入资源 - 也许你只是使用了错误的组件。