1

Java で iText を使用して動的に生成された PDF があります。Bean プロパティ:

ByteArrayOutputStream baos = new ByteArrayOutputStream();
Document document = new Document(PageSize.LETTER);
pdfWriter = PdfWriter.getInstance(document, baos);
//iText code here
ByteArrayInputStream stream = new ByteArrayInputStream(baos.toByteArray());
StreamedContent file = new DefaultStreamedContent(stream,"application/pdf","Sds.pdf");

そのため、Bean プロパティは StreamedContent タイプのこのファイル変数を返します。タグを使用すると、魔法のように機能します。しかし、次のようにメディアオブジェクトを使用すると:

    <p:media player="pdf" height="500" width="400" value="#{beanName.beanProperty}"></p:media>

「ファイルが %pdf- で始まっていません」というアラートが表示され、コンソールに次のように表示されます。

"org.primefaces.application.PrimeResourceHandler handleResourceRequest
 SEVERE: Error in streaming dynamic resource. Expression cannot be null"

私もiframeを使ってみましたが、うまくいきませんでした。基本的に、ページが読み込まれるとすぐに、生成した動的 PDF を自動的に読み込むことができるフレームを Web ページに埋め込もうとしています。静的 URL は機能しますが、動的コンテンツは機能しません! 私はさまざまな解決策を試しました。Primefaces downloadLink は機能しますが、primefaces media は機能しません。ところで、私はIE9でこれを達成しようとしています。(Chromeでも動作しません)。助けていただければ幸いです。ありがとうございました!

4

0 に答える 0