目前,我正在使用JasperReports JSF插件在现有的基于JSF的应用程序上使用jasper添加和开发PDF导出。
这就是这个东西,这个应用程序的端点连接到Grails。因此,我的JSF应用程序直接连接到设置的Oracle数据库,我的JSF应用程序必须每次需要来自数据库的数据时才向Grails应用程序发出请求以将其作为JSON返回。
在我设计的jasper模板中,有一个查询需要JDBC连接到我自己的数据库。在这种情况下,我必须为jasperreports插件的fillreport
方法提供连接对象。
JasperPrint jasperPrint = JasperFillManager.fillReport(urlJasper, parameters, connection);
这是fillreport
对象中的JasperFillManager
方法:
public static JasperPrint fillReport(String sourceFileName, Map<String, Object> params, Connection connection) throws JRException {
// <editor-fold defaultstate="collapsed" desc="Compiled Code">
/* 0: invokestatic net/sf/jasperreports/engine/JasperFillManager.getDefaultInstance:()Lnet/sf/jasperreports/engine/JasperFillManager;
* 3: aload_0
* 4: aload_1
* 5: aload_2
* 6: invokevirtual net/sf/jasperreports/engine/JasperFillManager.fill:(Ljava/lang/String;Ljava/util/Map;Ljava/sql/Connection;)Lnet/sf/jasperreports/engine/JasperPrint;
* 9: areturn
* */
// </editor-fold>
}
主要问题是,我可以从Grails的数据源获取连接对象吗?因为据我所知,Grails到JSF的输出始终是JSON格式。非常感谢。对不起,解释不好。
答案 0 :(得分:0)
注入dataSource
Datasource dataSource
然后致电
dataSource.getConnection()