在jrxml文件中编译来自jrxml的jasper文件?可能吗?

时间:2011-02-16 13:01:07

标签: jasper-reports ireport

我有一个jrxml文件,想要添加子报表表达式。但是我只有myFile.jrxml并且无法传递jasper文件。是否可以将我的jrxml文件编译为jasper文件而不是java代码,但是在当前的jrxml文件中?如果可能的话,怎么做?

<subreportExpression  class="java.lang.String"><![CDATA[$P{SUBREPORT_DIR}+"/myFile.jasper"]]></subreportExpression>

我试过了:

<subreport  isUsingCache="true">

<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
          <subreportExpression  class="net.sf.jasperreports.engine.JasperReport"><![CDATA[net.sf.jasperreports.engine.JasperCompileManager.compileReport(net.sf.jasperreports.engine.xml.JRXmlLoader.load($P{SUBREPORT_DIR} + "myFile.jrxml"))]]></subreportExpression>

</subreport>

但发生了错误: 严重:评估表达式时出错:         源文本:net.sf.jasperreports.engine.JasperCompileManager.compileReport(net.sf.jasperreports.engine.xml.JRXmlLoader.load($ P {SUBREPORT_DIR} +“myFile.jrxml”))

3 个答案:

答案 0 :(得分:3)

<subreportExpression>
  <![CDATA[JasperCompileManager.compileReport($P{SUBREPORT_DIR}+"/myFile.jrxml")]]>
</subreportExpression>

答案 1 :(得分:2)

根据我在终极指南中所读到的,答案是否定的,这是不可能的。为什么不能将子报表编译为jasper文件?

答案 2 :(得分:1)

是的,有可能,我不知道这里使用的代码,只需打开iReport 5.0。打开.jrxml文件,它将在屏幕上显示转换选项。提供保存.jasper文件的路径。现在您已.jrxml,并且可编辑jasper