小编典典

我的Jasper模板未显示任何文字

java

我目前不确定为什么要运行我的示例模板,看不到任何文本。

<?xml version="1.0"?>
<jasperReport
    xmlns="http://jasperreports.sourceforge.net/jasperreports"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://jasperreports.sourceforge.net/
    jasperreports http://jasperreports.
    sourceforge.net/xsd/jasperreport.xsd"
    name="SampleReport" pageWidth="798" pageHeight="1000">
    <title>
        <band height="50">
          <staticText>
            <reportElement x="0" y="0" width="180" height="15"/>
            <textElement/>
            <text>
              <![CDATA[Sample Title]]>
            </text>
          </staticText>
        </band>
      </title>
    <detail>
        <band height="20">
            <staticText>
                <reportElement x="20" y="0" width="200" height="20"/>
                <text>
                    <![CDATA[Sample Text]]>
                </text>
            </staticText>
        </band>
    </detail>
</jasperReport>

我使用了ant任务来像这样运行此测试。

<target name="viewDesignXML"
    <java classname="net.sf.jasperreports.view.JasperDesignViewer"
        fork="true">
        <arg value="-XML" />
        <arg value="-F${file.name}.jrxml" />
        <classpath refid="classpath" />
    </java>
</target>

这是Jasperreport 4.5和Eclipse 3.6

谢谢


阅读 218

收藏
2020-09-15

共1个答案

小编典典

您没有指定数据源,因此报告的原因为空。

您可以设置 whenNoDataTypeWhen No Data iReport中的属性)报告的属性以显示“空”报告。

该属性的可能值为:

  • 没有页面 :生成的文档中将没有页面。尝试加载此类文档(whenNoDataType="NoPages")时,查看者可能会抛出错误。
  • 空白页 :生成的文档将包含一个空白页(whenNoDataType="BlankPage")。
  • 所有节,无明细 :除明 细节 (带)外的所有报告节将显示在生成的文档(whenNoDataType="AllSectionsNoDetail")中。
  • 无数据节 :生成的文档将仅包含一个 noData 节(带)(whenNoDataType="NoDataSection")。

如果使用 noData 部分,则应将此带添加到报表模板中(例如,在iReport的帮助下)。


当您使用如下Java代码时:

JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,
       map, new JREmptyDataSource());

这意味着您正在传递空的数据源,换句话说,您没有传递数据源。

如果您没有传递数据源和数据库连接,则在报表中显示数据的唯一机会-是通过参数传递数据(或在报表模板中初始化参数)

2020-09-15