[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[birt-news] birt on weblogic

Anyone,

I have successfully integrated BIRT reports in my web application and deployed it on Tomcat. However, when I tried to deploy the application on Weblogic 8.1 reports wouldn’t work. I discovered that the problem is in dynamically assigned query parameters.

 

Any thoughts?

 

The assignment in my beforeOpen method:

queryText="SELECT distinct APPLICATION_ID, OBJECT_ID, OBJECT_NAME, DECODE(CHG_TRACK_OBJECT_STATUS,  'ENABLED',  'Yes',  'No') AS OBJECT_ENABLED_FLAG FROM RPT_CHANGE_TRACKING_V WHERE APPLICATION_ID = ? AND OBJECT_ID in (" + params["selectedObjIds"] + ") AND OBJ_VAL_DISP in (" + params["selectedObjValNamesCsv"] + ") AND CHG_HIST_CAPABLE_FLAG = 'Y'";

 

The error message:

 

Error0 : odaconsumer.CannotGetResultSetMetaData ( 1 time(s) )

detail : org.eclipse.birt.data.engine.core.DataException: Cannot get the result set metadata.
SQL statement does not return a ResultSet object.
ORA-01008: not all variables bound

 at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.getRuntimeMetaData(PreparedStatement.java:379)
 at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.getProjectedColumns(PreparedStatement.java:339)
 at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.setColumnsProjection(PreparedStatement.java:1028)
 at org.eclipse.birt.data.engine.executor.DataSourceQuery.prepare(DataSourceQuery.java:315)
 at org.eclipse.birt.data.engine.impl.PreparedExtendedDSQuery$ExtendedDSQueryExecutor.prepareOdiQuery(PreparedExtendedDSQuery.java:277)
 at org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.prepareExecution(PreparedQuery.java:672)
 at org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.access$000(PreparedQuery.java:498)
 at org.eclipse.birt.data.engine.impl.PreparedQuery.doPrepare(PreparedQuery.java:225)
 at org.eclipse.birt.data.engine.impl.PreparedDataSourceQuery.execute(PreparedDataSourceQuery.java:145)
 at org.eclipse.birt.report.engine.data.dte.DteDataEngine.execute(DteDataEngine.java:205)
 at org.eclipse.birt.report.engine.executor.QueryItemExecutor.openResultSet(QueryItemExecutor.java:62)
 at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:122)
 at org.eclipse.birt.report.engine.executor.ReportExecutorVisitor.visitTableItem(ReportExecutorVisitor.java:187)
 at org.eclipse.birt.report.engine.ir.TableItemDesign.accept(TableItemDesign.java:69)
 at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:125)
 at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:89)
 at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:175)
 at com.applimation.amplatform.api.report.birt.AMBirtReportAPI.generateReport(AMBirtReportAPI.java:137)
 at com.applimation.amplatform.api.report.birt.AMBirtReportAPI.generateReport(AMBirtReportAPI.java:68)
 at com.applimation.aps.bo.APSExportOptBO.createReportChgTrkngPdfObjsPage(APSExportOptBO.java:878)
 at com.applimation.aps.action.APSExportOptAction.execute(APSExportOptAction.java:443)
 at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1006)
 at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:419)
 at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:315)
 at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6718)
 at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
 at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
 at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3764)
 at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2644)
 at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
 at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)
Caused by: org.eclipse.birt.report.data.oda.jdbc.JDBCException: SQL statement does not return a ResultSet object.
ORA-01008: not all variables bound

 at org.eclipse.birt.report.data.oda.jdbc.Statement.executeQuery(Statement.java:342)
 at org.eclipse.birt.report.data.oda.jdbc.Statement.getMetaData(Statement.java:296)
 at org.eclipse.datatools.connectivity.oda.consumer.helper.OdaQuery.doGetMetaData(OdaQuery.java:387)
 at org.eclipse.datatools.connectivity.oda.consumer.helper.OdaQuery.getMetaData(OdaQuery.java:355)
 at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.getRuntimeMetaData(PreparedStatement.java:369)
 ... 36 more
Caused by: java.sql.SQLException: ORA-01008: not all variables bound

 at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
 at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)
 at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:582)
 at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1986)
 at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteDescribe(TTC7Protocol.java:880)
 at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2516)
 at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2850)
 at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:609)
 at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:537)
 at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:124)
 at org.eclipse.birt.report.data.oda.jdbc.Statement.executeQuery(Statement.java:338)
 ... 40 more