Я попытался настроить JNDI в tomcat для использования в отчетах BIRT.
Он работает на моей локальной машине с Windows 10, но не работает на Unix.
Tomcat: apache-tomcat-7.0.69
BIRT: 4.8.0
Jar уже установлен и с ip, ID пользователя и паролем работает нормально, но не работает с JNDI.
Последовали шаги:
В context.xml создан ресурс
<Resource name="jdbc/dbConnection" auth="Container" type="javax.sql.DataSource"
maxTotal="500" maxIdle="30" maxWaitMillis="10000"
username="abc" password="abc123" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306"/>
В Web.xml создан ресурс ref
<resource-ref> <description>DB Connection</description>
<res-ref-name>jdbc/dbConnection</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
В файле rptdesign, используя URL-адрес JNDI, например:
Java: comp / env / jdbc / dbConnection
Я следовал за этой ссылкой:
https://tomcat.apache.org/tomcat-8.0-doc/jndi-datasource-examples-howto.html
Это бросок ниже исключения:
org.eclipse.birt.report.engine.api.EngineException: во время обработки возникла исключительная ситуация. Пожалуйста, смотрите следующее сообщение для деталей:
Невозможно открыть соединение для драйвера: org.eclipse.birt.report.data.oda.jdbc.
org.eclipse.birt.report.data.oda.jdbc.JDBCException: ошибка при получении соединения, URL не может быть нулевым.
в org.eclipse.birt.report.engine.executor.ExecutionContext.addException (ExecutionContext.java:1245)
в org.eclipse.birt.report.engine.executor.ExecutionContext.addException (ExecutionContext.java:1224)
в org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery (QueryItemExecutor.java:96)
в org.eclipse.birt.report.engine.executor.TableItemExecutor.execute (TableItemExecutor.java:62) .......
Пожалуйста, помогите