Hello,
I created a Virtual Datasource to combine two separate datasources. Both datasources are created as JDBC oracle type (and the "Test Connection" is passed for both).
The sql query executes a select statement from one DB table.
When running the jasper report I get following error in jasperserver.log :
2020-10-20 10:24:21,688 ERROR ErrorPageHandlerAction,default task-704:115 - Error UID 9a3055d9-556a-4b9c-a11a-89ef55d03116
com.jaspersoft.jasperserver.api.JSException: jsexception.error.creating.connection
Arguments:
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.JdbcDataSourceService.createConnection(JdbcDataSourceService.java:61)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.BaseJdbcDataSource.setReportParameterValues(BaseJdbcDataSource.java:46)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.JdbcDataSourceService.setReportParameterValues(JdbcDataSourceService.java:66)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl.fillReport(EngineServiceImpl.java:1823)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$ReportFill.runWithDataSource(EngineServiceImpl.java:1159)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$ReportFill.runReport(EngineServiceImpl.java:1088)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.EngineServiceImpl$ReportRunnable.run(EngineServiceImpl.java:983)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.jaspersoft.jasperserver.api.common.virtualdatasourcequery.VirtualDataSourceException: TEIID11010 java.sql.SQLException: Invalid argument(s) in call
at com.jaspersoft.jasperserver.api.engine.common.virtualdatasourcequery.impl.TeiidVirtualDataSourceQueryServiceImpl.deployVirtualDataSource(TeiidVirtualDataSourceQueryServiceImpl.java:345)
at com.jaspersoft.jasperserver.api.engine.common.virtualdatasourcequery.impl.TeiidConnectionFactoryImpl.createConnection(TeiidConnectionFactoryImpl.java:74)
at com.jaspersoft.jasperserver.api.engine.common.virtualdatasourcequery.VirtualSQLDataSource.getConnection(VirtualSQLDataSource.java:64)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.TibcoDriverManagerImpl.unlockConnection(TibcoDriverManagerImpl.java:56)
at com.jaspersoft.jasperserver.api.engine.jasperreports.service.impl.JdbcDataSourceService.createConnection(JdbcDataSourceService.java:53)
... 9 more
Caused by: org.teiid.translator.TranslatorException: TEIID11010 java.sql.SQLException: Invalid argument(s) in call
at org.teiid.translator.jdbc.JDBCExecutionFactory.getMetadata(JDBCExecutionFactory.java:308)
at org.teiid.translator.jdbc.JDBCExecutionFactory.getMetadata(JDBCExecutionFactory.java:69)
at org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
at org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
at org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
at org.teiid.runtime.EmbeddedServer.loadMetadata(EmbeddedServer.java:811)
at org.teiid.runtime.AbstractVDBDeployer.loadMetadata(AbstractVDBDeployer.java:210)
at org.teiid.runtime.EmbeddedServer.deployVDB(EmbeddedServer.java:761)
at org.teiid.runtime.EmbeddedServer.deployVDB(EmbeddedServer.java:673)
at com.jaspersoft.jasperserver.api.engine.common.virtualdatasourcequery.impl.TeiidVirtualDataSourceQueryServiceImpl.deployVirtualDataSource(TeiidVirtualDataSourceQueryServiceImpl.java:328)
... 13 more
Caused by: java.sql.SQLException: Invalid argument(s) in call
at oracle.jdbc.OracleDatabaseMetaData.getIndexInfo(OracleDatabaseMetaData.java:4105)
at org.apache.commons.dbcp.DelegatingDatabaseMetaData.getIndexInfo(DelegatingDatabaseMetaData.java:327)
at org.teiid.translator.jdbc.JDBCMetdataProcessor.getIndexes(JDBCMetdataProcessor.java:671)
at org.teiid.translator.jdbc.JDBCMetdataProcessor.getConnectorMetadata(JDBCMetdataProcessor.java:177)
at org.teiid.translator.jdbc.JDBCExecutionFactory.getMetadata(JDBCExecutionFactory.java:306)
... 22 more
Can someone please help me with this error cause ?
2 Answers:
The Oracle native driver versus the TIBCO Oracle driver can behave differently when it comes to VDS and importing the schema. When using Oracle native driver, synonyms don't work in system schema but for TIBCO driver, system schema is not displayed. It is worth switching to the TIBCO driver to see if you are getting a different error message or none at all.
When using the TIBCO oracle jdbc driver,append "CatalogOptions=0" to the URL connection string.
For example: jdbc:tibcosoftware:oracle://172.17.17.178:1521;SID=ORCL;CatalogOptions=0
Hi vchiem,
Thanks ! Using TIBCO Oracle driver solved the error.
I have created a report with a sql query, and configured the report DataSource to be the virtual DS created.
But when running the report I get another error : "org.teiid.api.exception.query.QueryResolverException: Group does not exist: HDM_DS_Tibco.DEVICE"
I'm not sure how to put the alias in order for the query to work. I tried schema name, Datasource name, but nothing works.
Any recommandations for me ?
Thanks.