It's all about the answers!

Ask a question

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


EclipseTalk . (32736161) | 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.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.