It's all about the answers!

Ask a question

How to generate BIRT report using Jazz data source with script genReport


EclipseTalk . (32735960) | asked Mar 18 '13, 2:20 p.m.
edited Mar 18 '13, 7:36 p.m.
 Hello,
I'm trying to automate BIRT reports generations by using the script genReport.bat from the BIRT runtime. It works fine when I run the sample report or when I use JDBC datasource but when I want to generate reports using Jazz data source, I get this error even though I have all the ODA jars in the plugins and WEB_INF\platform\plugins directory.
Does anyone know how to configure the BIRT runtime to generate BIRT RTC-based reports?
Thanks in advance for your help.

<code>
Mar 15, 2013 4:28:28 PM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.OdaDataSetHandle
Mar 15, 2013 4:28:28 PM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.OdaDataSetHandle
Mar 15, 2013 4:28:28 PM org.eclipse.birt.report.data.adapter.impl.ModelAdapter adaptDataSet
WARNING: handle type: org.eclipse.birt.report.model.api.OdaDataSetHandle
Mar 15, 2013 4:28:28 PM org.eclipse.birt.data.engine.odaconsumer.Driver doGetDriverManifest
SEVERE: Cannot find or process the ODA data source extension configuration.java.lang.IllegalArgumentException: Cannot find the ODA dataSource extension (com.ibm.team.reports.generic.dataSource).
 Check the workspace log file for any problems with loading the extension bundleand its dependencies.
        at org.eclipse.datatools.connectivity.oda.util.manifest.ManifestExplorer.getExtensionManifest(ManifestExplorer.java:200)
        at org.eclipse.birt.data.engine.odaconsumer.Driver.doGetDriverManifest(Driver.java:147)
        at org.eclipse.birt.data.engine.odaconsumer.Driver.findDataSourceExtensionConfig(Driver.java:123)
        at org.eclipse.birt.data.engine.odaconsumer.Driver.getDriverExtensionConfig(Driver.java:78)
        at org.eclipse.birt.data.engine.odaconsumer.Driver.getExtensionConfig(Driver.java:60)
        at org.eclipse.birt.data.engine.odaconsumer.Driver.getDriverHelper(Driver.java:93)
        at org.eclipse.birt.data.engine.odaconsumer.DriverManager.getDriverHelper(DriverManager.java:98)
        at org.eclipse.birt.data.engine.odaconsumer.ConnectionManager.openConnection(ConnectionManager.java:151)
        at org.eclipse.birt.data.engine.executor.DataSource.newConnection(DataSource.java:190)
        at org.eclipse.birt.data.engine.executor.DataSource.open(DataSource.java:178))
</code>

Accepted answer


permanent link
James Moody (3.3k24) | answered Mar 18 '13, 2:29 p.m.
JAZZ DEVELOPER
Hi,

I think I understand what you're doing now - and the answer is it's not possible to have BIRT (isolated from the RTC server) generate these reports for you. Even if you added our custom ODA plug-in, it has *extensive* runtime dependencies on Jazz Foundation and RTC plugins and capabilities, and cannot be run outside of the OSGi environment in the RTC server.

james

EclipseTalk . selected this answer as the correct answer

Comments
EclipseTalk . commented Mar 18 '13, 3:58 p.m.

 Thanks for the clarification.


Vladimir Amelin commented Mar 19 '13, 3:49 a.m.

We use CURL to generate reports in the night, pretty easy way to get what you want.


Leonardo Marzo commented May 16 '13, 2:34 p.m.

So, is it possible to run genReport.bat inside RTC Eclipse Client? How can I do that?

I´m looking for a way to automatize testing for customized BIRT reports.

 


Alberto Teodoro commented Jun 01 '14, 4:08 a.m.

Hi Vladimir,

I'm very intersted in your solution.

Please, can you describe it to me better?

May thanks

Alberto


Vladimir Amelin commented Jun 02 '14, 2:41 a.m. | edited Jun 02 '14, 2:41 a.m.
1) You need to find out report UUID by viewing it, URL will like this:

2) Use this %REPORT_UUID% to download report using CURL (in Excel format in this exmple):

curl -k -b %COOKIES% -H "Accept: application/vnd.ms-excel" "%HOST%/service/com.ibm.team.reports.service.internal.IReportViewerService?format=xls&queryUUID=%REPORT_UUID%&__showArchived=false" >%REPORT_DIR%\Report%REPORT_UUID%.xls 2>>report.log

Other details regarding CURL are here.


Alberto Teodoro commented Jun 03 '14, 9:37 a.m.

Hi Vladimir,

many many thanks: the details you've sent me are very useful for my scope.

I would like to ask some things about the retrieve of the report based on the "report UUID", because it's the target I want to reach: I would like to schedule, or simply call, the creation of a report based on a parameter that I'll pass in the URL.

The URL you have sent me, for me, works fine if I use %QUERY_UUID%, instead of %REPORT_UUID%. This means that I only can use already "done" Reports, that have the assigned "queryUUIDs".
I've esplained what I would like to obtain here:

BIRT report in RTC: how to export a report called passing params via call


Vladimir Amelin commented Jun 03 '14, 10:10 a.m.

 Alberto, I didn't managed to pass report parameters via URL, so I had to set it manually and generate saved reports with particular parameters (fortunately, not so many cases).

showing 5 of 7 show 2 more comments

Your answer


Register or to post your answer.