JasperReports API:如何定义数据适配器

时间:2016-05-25 13:06:47

标签: java jasper-reports

我在JasperStudio中设置了一个报告,该报告应该接收报告标题和查询作为参数,然后填写报告。

使用默认查询值,可以从Jasper Studio正确填充报告。我已经定义了一个允许通过Jaspersoft Studio正确行为的数据适配器(DB.xml)。

如果我尝试用Java填写报告,请使用

之类的内容
JasperFillManager.fillReport(fileIn, parameters, new JREmptyDataSource()); 

如果参数包含标题和查询的两个字符串,则导出的pdf将具有正确的标题,但没有关于列的信息,这似乎表明fillReport不知道BD适配器。

我是否必须将其传递给其他参数?我应该将适配器xml文件放在特定的位置吗?

1 个答案:

答案 0 :(得分:0)

如果要在JSS外部使用数据适配器,则必须将报告中的net.sf.jasperreports.data.adapter属性设置为数据适配器xml所在的文件系统路径或类路径资源。

填写报表时不应传递数据源,请使用仅将报表和参数映射为参数的fillReport方法。