Hi,<br />
<br />
Does anyone know how to integrate BIRT with Tomcat so that it will produce a report via a servlet? At present the servlet fails on the IRunAndRenderTask.run() call. The exception thrown is a NullPointerException that specifies:<br />
<br />
org.eclipse.birt.report.engine.api.impl.RunAndRenderTask doRun<br />
SEVERE: An error happened while running the report. Cause:<br />
java.lang.NullPointerException at org.eclipse.birt.chart.reportitem.ChartReportItemUtil.isBaseGroupingDefined(ChartReportItemUtil.java:471)<br />
org.eclipse.birt.chart.reportitem.AbstractChartBaseQueryGenerator.createBaseGroupingDefinition(AbstractChartBaseQueryGenerator.java:668)<br />
org.eclipse.birt.chart.reportitem.AbstractChartBaseQueryGenerator.initCategoryGrouping(AbstractChartBaseQueryGenerator.java:497)<br />
org.eclipse.birt.chart.reportitem.AbstractChartBaseQueryGenerator.generateGroupBindings(AbstractChartBaseQueryGenerator.java:323)<br />
org.eclipse.birt.chart.reportitem.ChartBaseQueryHelper.createBaseQuery(ChartBaseQueryHelper.java:109)<br />
org.eclipse.birt.chart.reportitem.ChartReportItemQueryImpl.createQuery(ChartReportItemQueryImpl.java:130)<br />
org.eclipse.birt.chart.reportitem.ChartReportItemQueryImpl.createReportQueries(ChartReportItemQueryImpl.java:95)<br />
org.eclipse.birt.report.engine.data.dte.ReportQueryBuilder$QueryBuilderVisitor.visitExtendedItem(ReportQueryBuilder.java:663)<br />
org.eclipse.birt.report.engine.ir.ExtendedItemDesign.accept(ExtendedItemDesign.java:45)<br />
org.eclipse.birt.report.engine.data.dte.ReportQueryBuilder.build(ReportQueryBuilder.java:262)<br />
org.eclipse.birt.report.engine.data.dte.ReportQueryBuilder.build(ReportQueryBuilder.java:244)<br />
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.prepare(AbstractDataEngine.java:165)org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:109)org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportExecutor.execute(WrappedReportExecutor.java:59)org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplciateReportExecutor.execute(SuppressDuplciateReportExecutor.java:51)<br />
org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportExecutor.execute(WrappedReportExecutor.java:59)org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:149)<br />
org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:72)<br />
<br />
<br />
Software in use is:<br />
Tomcat 6.0.16 running on Ubuntu linux.<br />
BIRT 2.3.1 runtime<br />
<br />
Some background on what I've done so far:<br />
1. Successfully created PDF via application. Generated a PDF report from a Java application (running within eclipse) using the unzipped Birt2.3.1 runtime to produce a report successfully. This suggests there isn't a problem with the report being used. Birt runtime in my code was explicitly set for EngineConfig [eg config.setBIRTHome("/opt/APPSERVERS/birt-runtime-2_3_1/ReportEngine");]<br />
2. Deployed the Birt Runtime onto Tomcat in the web application running the servlet. I followed the instructions at:<br />
<a class='bbc_url' href='
http://wiki.eclipse.org/Servlet_Example_(BIRT)_2.1'>Servlet Example (BIRT) 2.1 - Eclipsepedia</a><br />
3. Created a servlet as provided in the example at:<br />
<a class='bbc_url' href='
http://wiki.eclipse.org/Servlet_Example_(BIRT)_2.1'>Servlet Example (BIRT) 2.1 - Eclipsepedia</a><br />
4. End up with the error at the top...Aggh!!!<br />
<br />
Any ideas on this would be appreciated.<br />
<br />
Thks.