Connexion Data Source avec JNDI
Bonjour a tous,
J'ai utilisé myeclipse 8.6 comme IDE et la génération des graphes avec BIRT.
Je veux comment se connecter à mon base en utilisant JNDI.
J'ai comme serveur MyEclipse Tomcat 6 intégré à myeclipse.
J'ai fait les étapes suivantes mais malheureusement ne marche pas :(.
D'abord j'ai ajouter le code suivant dans mon fichier web.xml de mon application jee:
Code:
1 2 3 4 5 6
| <resource-ref>
<description>Resource reference to a factory for java.sql.Connection</description>
<res-ref-name>jdbc/MySqlDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref> |
Ensuite j'ai ajouter le code suivant dans le fichier context.xml sous tomcat/conf:
Code:
1 2 3 4 5 6 7 8 9
|
<Resource name="jdbc/MySqlDB"
auth="Container"
type="javax.sql.DataSource"
maxActive="5" maxIdle="-1" maxWait="10000"
username="root" password=""
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/zaas"
description="MySQL Sfdata DB"/> |
J'ai copier ce fichier dans mon application sous le repertoire WEB-INF.
Enfin dans mon fichier testjndi.rptdesign (XML Source) j'ai initialement sans l'utilisation de JNDI le code suivant:
Code:
1 2 3 4 5 6 7 8
|
<data-sources>
<oda-data-source extensionID="com.genuitec.eclipse.reporting.oda" name="Data Source" id="8">
<property name="meDriver">testjndi</property>
<property name="odaDriverClass">com.mysql.jdbc.Driver</property>
<property name="odaURL">jdbc:mysql://localhost:3306/zaas</property>
<property name="odaUser">root</property>
</data-sources> |
Il marche trés bien sans JNDI.
Pour l'utilisation de JNDI je met le code suivant:
Code:
1 2 3 4 5 6
|
<data-sources>
<oda-data-source extensionID="com.genuitec.eclipse.reporting.oda" name="Data Source" id="8">
<property name="odaJndiName">java:comp/env/jdbc/MySqlDB</property>
</oda-data-source>
</data-sources> |
Mais malheureusement il ne marche pas il affiche l'exception suivante:
org.eclipse.birt.report.service.api.ReportServiceException: Error happened while running the report
Merci beaucoup d'avance.