2017-04-19 49 views
1

目前,我正在使用JasperReports JSF插件在現有的基於JSF的應用程序中添加和開發PDF導出。如何獲取用於jasper報告的Grails數據源連接?

這是事情,這個應用程序的端點連接到Grails。因此,相反,我的JSF應用程序直接連接到設置的Oracle數據庫,我的JSF應用程序必須在每次需要數據庫中的數據將它作爲JSON返回時向Grails應用程序發出請求。

在我設計的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

也不JSF不是Java-SE使得到數據源的連接。所以我希望一些Grails專家可以幫助你... – Kukeltje

回答

0

注入則dataSource

Datasource dataSource

然後調用

dataSource.getConnection()

+0

對不起,連接在JSF-app中是必需的,而不是Grails應用程序。 –

+1

那麼這與Grails有什麼關係呢? –

相關問題