发新话题
打印

JOR导出pdf出错

JOR导出pdf出错

错误如下
Servlet.service() for servlet jatoolsreport threw exception
ExceptionConverter:
java.io.IOException: The document has no pages.
        at com.lowagie.text.pdf.PdfPages.writePageTree(PdfPages.java:107)
        at com.lowagie.text.pdf.PdfWriter.close(PdfWriter.java:848)
        at com.lowagie.text.pdf.PdfDocument.close(PdfDocument.java:1043)
        at com.lowagie.text.Document.close(Document.java:497)
        at jatools.engine.export.pdf.PdfExport.close(PdfExport.java:141)
        at jatools.engine.export.pdf.PdfExport1.close(PdfExport1.java:91)
        at jatools.engine._Job.printAsPDF(_Job.java:87)
        at jatools.engine.ReportJob.printAsPDF(ReportJob.java:109)
        at jatools.server.ReportExporter.export(ReportExporter.java:82)
        at jatools.server.ReportExporter.service(ReportExporter.java:241)
        at jatools.server.JatoolsReportServlet.jrservice(JatoolsReportServlet.java:57)
        at jatools.server.JatoolsReportServlet.doGet(JatoolsReportServlet.java:81)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

网上搜到 在ireport里面你的报表默认没有查到任何数据时,就会显示:the document has no pages,如果想在没有数据时,也出现预览窗口,(假设你的ireport的语言是简体中文的),那就选择“编辑”-->“报表属性”-->“More”在“如果没有数据时”里面选“All sections,no detail”就可以了,如果报表没查出数据,就会显示预览窗口。
请问斑竹JOR是否有相应的设置项?

TOP

在jor中,没有数据时,你可以让表格或其他组件,不显示,就ok了,如下图所示:

怎么判断没数据?用 length方法结合组件的“可见性”打印样式即可。 节点方法有取子节点数,兄弟节点,父节点,具体参照 :http://www.jatools.com/doc/guide/jrmx0208.htm
附件: 您所在的用户组无法下载或查看附件

TOP

实际上,jor,正常情况下,如果没有数据时,默认不会显示明细项,如下所示,这点跟 ireport 的 "All sections,no detail” 相似

设计的模板

无数据时的报表效果

TOP

发新话题