XML Data source deployed in Tomcat causes NullPointerException

karl234
edited February 11, 2022 in Analytics #1
Hi,<br />
<br />
I have a report that uses an XML data source and I've previewed the report in the Designer it generates the report. However, when I deploy the same report to the BIRT Viewer on Tomcat I get the exception pasted at the end of this post.<br />
<br />
To eliminate problems with the Tomcat & Birt Viewer installation I wrote the same report but change the Data source to a JDBC database. Installed the relevant drivers and the report ran fine.<br />
<br />
I haven't been able to identify anything in the installation procedure that I've missed; has any one else had a similar problems?<br />
<br />
<strong class='bbc'>Exception</strong><br />
<br />
Aug 5, 2008 11:51:54 AM org.eclipse.birt.report.engine.api.impl.RunTask doRun<br />
SEVERE: An error happened while running the report. Cause:<br />
java.lang.NullPointerException<br />
at org.eclipse.birt.report.engine.adapter.ModelDteApiAdapter.newJointDataSet(ModelDteApiAdapter.java:300)<br />
at org.eclipse.birt.report.engine.adapter.ModelDteApiAdapter.createDataSetDesign(ModelDteApiAdapter.java:212)<br />
at org.eclipse.birt.report.engine.adapter.ModelDteApiAdapter.doDefineDataSet(ModelDteApiAdapter.java:276)<br />
at org.eclipse.birt.report.engine.adapter.ModelDteApiAdapter.defineDataSet(ModelDteApiAdapter.java:235)<br />
at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.prepare(AbstractDataEngine.java:135)<br />
at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:101)<br />
at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportExecutor.execute(WrappedReportExecutor.java:59)<br />
at org.eclipse.birt.report.engine.internal.executor.emitter.ReportEmitterExecutor.execute(ReportEmitterExecutor.java:76)<br />
at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportExecutor.execute(WrappedReportExecutor.java:59)<br />
at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplciateReportExecutor.execute(SuppressDuplciateReportExecutor.java:51)<br />
at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:193)<br />
at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:228)<br />
at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:89)<br />
at org.eclipse.birt.report.service.ReportEngineService.runReport(ReportEngineService.java:1117)<br />
at org.eclipse.birt.report.service.BirtViewerReportService.runReport(BirtViewerReportService.java:146)<br />
at org.eclipse.birt.report.service.actionhandler.BirtRunReportActionHandler.__execute(BirtRunReportActionHandler.java:78)<br />
at org.eclipse.birt.report.service.actionhandler.BirtChangeParameterActionHandler.runReport(BirtChangeParameterActionHandler.java:57)<br />
at org.eclipse.birt.report.service.actionhandler.AbstractChangeParameterActionHandler.__execute(AbstractChangeParameterActionHandler.java:53)<br />
at org.eclipse.birt.report.service.actionhandler.AbstractBaseActionHandler.execute(AbstractBaseActionHandler.java:89)<br />
at org.eclipse.birt.report.soapengine.processor.AbstractBaseDocumentProcessor.__executeAction(AbstractBaseDocumentProcessor.java:47)<br />
at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.executeAction(AbstractBaseComponentProcessor.java:159)<br />
at org.eclipse.birt.report.soapengine.processor.BirtDocumentProcessor.handleChangeParameter(BirtDocumentProcessor.java:100)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)<br />
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)<br />
at java.lang.reflect.Method.invoke(Method.java:585)<br />
at org.eclipse.birt.report.soapengine.processor.AbstractBaseComponentProcessor.process(AbstractBaseComponentProcessor.java:111)<br />
at org.eclipse.birt.report.soapengine.endpoint.BirtSoapBindingImpl.getUpdatedObjects(BirtSoapBindingImpl.java:66)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<br />
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)<br />
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)<br />
at java.lang.reflect.Method.invoke(Method.java:585)<br />
at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:397)<br />
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:186)<br />
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)<br />
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)<br />
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)<br />
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)<br />
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:454)<br />
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)<br />
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)<br />
at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.doPost(BirtSoapMessageDispatcherServlet.java:225)<br />
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)<br />
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)<br />
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)<br />
at org.eclipse.birt.report.servlet.BirtSoapMessageDispatcherServlet.service(BirtSoapMessageDispatcherServlet.java:112)<br />
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)<br />
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)<br />
at org.eclipse.birt.report.filter.ViewerFilter.doFilter(ViewerFilter.java:68)<br />
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)<br />
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)<br />
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)<br />
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)<br />
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)<br />
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)<br />
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)<br />
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)<br />
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)<br />
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)<br />
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)<br />
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)<br />
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)<br />
at java.lang.Thread.run(Thread.java:595)

Comments

  • Virgil Dodson
    Virgil Dodson E admin
    edited December 31, 1969 #2
    Hi karl234,

    What version of Tomcat are you using? Maybe there is an older XML/SAX processor or other conflicting library. I also see something about a joint data set in the report... Are you combining this XML source with another one?
    Warning No formatter is installed for the format ipb
  • karl234
    edited December 31, 1969 #3
    Virgil,

    Thanks for your reply. I'm using Tomcat version 5.5.26 and it was a fresh installation, the only thing I'm running in it right now in addition to the default applications is the BIRT viewer.

    As for the joint data set, I've mapped different parts of my XML tree to data sets. Then I take the data sets that this particular report is interested in and join them.

    Thanks,
    Karl