Использование источника данных POJO и запросы к Oracle DB

Я новичок в BIRT. Я пытаюсь использовать источник данных POJO, который по существу использует автономную банку, в которой есть код для запроса к Oracle DB. Когда я добавляю источник данных POJO и просматриваю результаты, я вижу следующую ошибку. Может ли кто-нибудь предложить, если мне нужно сделать что-то особенное. Я добавляю свою автономную банку в свойства Runtime Properties и Design Time.

org.eclipse.birt.data.engine.odaconsumer.OdaDataException: не удается выполнить инструкцию. org.eclipse.datatools.connectivity.oda.OdaException ; java.lang.reflect.InvocationTargetException

at org.eclipse.birt.data.engine.odaconsumer.ExceptionHandler.newException(ExceptionHandler.java:52)

at org.eclipse.birt.data.engine.odaconsumer.ExceptionHandler.throwException(ExceptionHandler.java:108)

at org.eclipse.birt.data.engine.odaconsumer.ExceptionHandler.throwException(ExceptionHandler.java:84)

at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.execute(PreparedStatement.java:586)

at org.eclipse.birt.data.engine.executor.DataSourceQuery.execute(DataSourceQuery.java:980)

at org.eclipse.birt.data.engine.impl.PreparedOdaDSQuery$OdaDSQueryExecutor.executeOdiQuery(PreparedOdaDSQuery.java:607)

at org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:1251)

at org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:233)

at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:178)

at org.eclipse.birt.report.engine.api.impl.ExtractionResults.nextResultIterator(ExtractionResults.java:157)

at org.eclipse.birt.report.designer.data.ui.dataset.DataSetPreviewer.preview(DataSetPreviewer.java:69)

at org.eclipse.birt.report.designer.data.ui.dataset.ResultSetPreviewPage$5.run(ResultSetPreviewPage.java:372)

at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)

Вызвано: org.eclipse.datatools.connectivity.oda.OdaException ; java.lang.reflect.InvocationTargetException

at org.eclipse.birt.data.oda.pojo.impl.internal.PojoDataSetFromCustomClass.open(PojoDataSetFromCustomClass.java:194)

at org.eclipse.birt.data.oda.pojo.impl.Query.executeQuery(Query.java:131)

at org.eclipse.datatools.connectivity.oda.consumer.helper.OdaQuery.doExecuteQuery(OdaQuery.java:480)

at org.eclipse.datatools.connectivity.oda.consumer.helper.OdaQuery.executeQuery(OdaQuery.java:444)

at org.eclipse.birt.data.engine.odaconsumer.PreparedStatement.execute(PreparedStatement.java:575)

... 9 more

Вызвано: java.lang.reflect.InvocationTargetException

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at org.eclipse.birt.data.oda.pojo.impl.internal.PojoDataSetFromCustomClass.open(PojoDataSetFromCustomClass.java:180)

... 13 more

Вызвано: java.lang.NoClassDefFoundError: oracle/jdbc/OracleDriver

at com.xxx.dao.mock.HitMissDao.getConnection(HitMissDao.java:111)

at com.xxx.dao.mock.HitMissDao.getHitMissDataFromDB(HitMissDao.java:38)

at com.xxx.dao.mock.HitMissDao.getHitMissData(HitMissDao.java:33)

at com.xxx.dataprovider.HitMissDataRetriever.open(HitMissDataRetriever.java:30)

... 18 more

person Anupam    schedule 08.02.2017    source источник


Ответы (1)


Скопируйте драйвер Oracle JDBC ojdbc6.jar (или ojdbc7.jar) в подкаталог %ECLIPSE_HOME%\plugins\org.eclipse.birt.report.data.oda.jdbc_*\drivers.

Точное имя каталога .....jdbc_*... зависит от вашей версии BIRT.

person hvb    schedule 09.02.2017