DynamicReport を PrimeFaces と統合する必要があるプロジェクトに取り組んでいます。
私の質問:新しいページで開かれていない PrimeFace パネル内のレポートを表示する方法はありますか?
可能であれば、それを行う完全な例をお願いします。
ありがとうございました
次に例を示します。
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try {
DynamicReports.report()
.setTemplate(Templates.reportTemplate)
.columns(stateColumn, statePorc)
.title(Templates.createTitleComponent2("Tittle"))
.summary(
DynamicReports.cht.pie3DChart()
.setTitleFont(boldFont)
.seriesColorsByName(seriesColors)
.setKey(stateColumn)
.series(
DynamicReports.cht.serie(itemColumn).setSeries(stateColumn)
)
)
.pageFooter(Templates.footerComponent)
.setDataSource(createDataSource4())
.toPdf(baos);
InputStream inputStream = new ByteArrayInputStream(baos.toByteArray());
barStream = new DefaultStreamedContent(inputStream, "application/pdf", "example.pdf");
setBarStream(barStream);
} catch (DRException e) {
e.printStackTrace();
}
そして、ここにビューがあります:
<p:dialog resizable="false" closeOnEscape="false" draggable="false" appendTo="@(body)" modal="true" id="pdfViewer" widgetVar="pdfModal" width="1220px" height="730px" style="z-index: 999;">
<p:media cache="false" value="#{yourBean.barStream}" width="100%" height="720px" player="pdf"/>
</p:dialog>