Précédent   Forum des professionnels en informatique > Java > Serveurs, conteneurs, et Java EE > Tomcat
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/05/2007, 15h28   #1
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Par défaut Tomcat 6 + JNDI

Salut tout le monde,
Bon voilà je viens d'installer le nouveau tomcat sur une machine Linux.
Je déploie toutes mes applis ... ok.
Je lance le navigateur et la paf, ben j'avais oublié de configurer les pools de connection JNDI pour tomcat.
Cependant, comment faire? La doc de tomcat est pas très précise, moi je veux pas mettre la connection dans le code, mais dans un fichier xml, c'est possible non?
A savoir que je dois migrer mon appli de JBoss vers Tomcat 6.
Voilà, je vous remercie.
+
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 08h36   #2
Membre éprouvé
 
Inscription : janvier 2006
Messages : 352
Détails du profil
Informations personnelles :
Âge : 45
Localisation : Suisse

Informations forums :
Inscription : janvier 2006
Messages : 352
Points : 419
Points : 419
Pour déclarer ton pool de connexion, tu as 2 solutions:
- dans le fichier server.xml : tu déclares un datasource global
- dans le fichier de contexte de ton application (si tu la déploies avec un fichier de contexte) sinon dans la définition du contexte de ton application au sein du fichier server.xml : tu déclares un datasource local

Il existe aussi une troisième solution qui consiste à déclarer un datasource global et de rajouter une référence à celui-ci dans le contexte de l'application. Cette méthode est intéressante lorsque l'on veut partager un datasource entre plusieurs applications. Sinon ma préférence va à l'utilisation d'un fichier de contexte par application avec le datasource déclaré dans celui-ci. Ainsi on ne modifie pas le fichier server.xml.

Jacques Desmazières
Jacques - 06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 08h57   #3
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Bonjour,
merci de ta réponse.
Mon application est un ensemble de war.
Il faut que j'écrive un fichier de contexte pour chaque war?
J'ai déjà essayé de modifier server.xml (à l'aide du tutorial qu'il y a sur developpez.net), mais sans succès.
Mais bon déjà, c'est dans quel fichier que tu me dis d'écrire?
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 09h18   #4
Membre éprouvé
 
Inscription : janvier 2006
Messages : 352
Détails du profil
Informations personnelles :
Âge : 45
Localisation : Suisse

Informations forums :
Inscription : janvier 2006
Messages : 352
Points : 419
Points : 419
Personnellement c'est ce que je fais : un fichier de contexte par fichier war. Par contre si chacun de tes war accède à la même base de données, le mieux est donc peut être de déclarer ton datasource au niveau du server.xml (il correspond à une référence JNDI globale ex:jdbc/monDS). Ensuite dans chacun de tes fichiers de contexte tu déclares une référence vers le datasource globale (elle correspond à une référence JNDI locale excomp/env/jdbc/monDS).

server.xml (extract):
Code :
1
2
3
4
5
6
7
8
<GlobalNamingResources>
<Resource name="jdbc/monDS" auth="Container" type="javax.sql.DataSource"/> 
<ResourceParams name="jdbc/monDS">  <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter>  <parameter><name>driverClassName</name><value>oracle.jdbc.driver.OracleDriver</value></parameter>  <parameter><name>url</name><value>jdbc:oracle:thin:@server:port:SID</value></parameter>  <parameter><name>username</name><value>user</value></parameter>  <parameter><name>password</name><value>password</value></parameter>
  <parameter><name>maxActive</name><value>20</value></parameter>
  <parameter><name>initialSize</name><value>0</value></parameter>
  <parameter><name>maxWait</name><value>-1</value></parameter>  <parameter><name>removeAbandoned</name><value>true</value></parameter>  <parameter><name>removeAbandonedTimeout</name><value>300</value></parameter>  <parameter><name>timeBetweenEvictionRunsMillis</name><value>120000</value></parameter>  <parameter><name>minEvictableIdleTimeMillis</name><value>60000</value></parameter>  <parameter><name>poolPreparedStatements</name><value>true</value></parameter>  <parameter><name>maxOpenPreparedStatements</name><value>100</value></parameter>
</ResourceParams>
</GlobalNamingResources>
Et le fichier de contexte (dans webapps) :
Code :
1
2
3
<Context path="/app" docBase="D:/deploy/app/app.war" debug="0">
	<ResourceLink name="jdbc/monDSLocal" global="jdbc/monDS" type="javax.sql.DataSource"/>
</Context>
(dans cet exemple, la référence JNDI est alors "java:comp/env/jdbc/monDSLocal")

Bien sûr, tu peux pour des tests mettre tout cela directement dans server.xml.

J'espère que ça te permettra d'avancer

Jacques Desmazières
Jacques - 06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 09h22   #5
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Je te remercie de tout ça!
Je précise que je n'ai pas de dossier extract, mais bon je vais modifier server.xml qui se trouve pour moi dans le répertoire conf de tomcat, il me semble que c'est celui la.
Je vais tester cela et je te donne ma réponse.
Encore merci de ta patience.
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/05/2007, 09h43   #6
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Je suis désolé d'être aussi mauvais mais bon je bute encore
Donc du coup, je vais te donner toutes mes infos.
Le server.xml est dans le répertoire conf (il me semble que c'est celui la)
Ensuite dans webapps, j'ai mes war. C'est tout.
J'ai un war qui s'appelle "home.war" qui est celui de démarrage.
Ce war va voir sur une BDD SQL Server. Dans le code ( ce n'est pas moi qui l'ai fait), la BDD est appellé via le nom GESTAPLI.
Et en fait quand je vais sur http://ip/home je recois ce message d'erreur :
Citation:
javax.servlet.ServletException: Error occurred. Cause: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/transactionManager/dataSource/end()'. Cause: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: com.ibatis.common.exception.NestedRuntimeException: Error parsing XPath '/sqlMapConfig/transactionManager/dataSource/end()'. Cause: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: com.ibatis.sqlmap.client.SqlMapException: There was an error configuring JndiDataSourceDaoTransactionPool. Cause: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
Caused by: javax.naming.NameNotFoundException: Le Nom GESTAPLI n'est pas lié à ce Contexte
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:545)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:486)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
Voilà, si ca peut t'aider dans mon problème.
Je te serais énormément reconnaissant de m'éclairer un peu plus.
Merci.
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 09h39   #7
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
S'il vous plaît, je suis assez désespéré là quand même, les modifications que je porte sur sever.xml ne font rien du tout!
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 10h14   #8
Membre éprouvé
 
Inscription : janvier 2006
Messages : 352
Détails du profil
Informations personnelles :
Âge : 45
Localisation : Suisse

Informations forums :
Inscription : janvier 2006
Messages : 352
Points : 419
Points : 419
Envoie le fichier server.xml

Jacques Desmazières
Jacques - 06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 10h42   #9
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
 
<!-- Note:  A "Server" is not itself a "Container", so you may not
     define subcomponents such as "Valves" at this level.
     Documentation at /docs/config/server.html
 -->
<Server port="8005" shutdown="SHUTDOWN">
 
  <!--APR library loader. Documentation at /docs/apr.html -->
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
  <Listener className="org.apache.catalina.core.JasperListener" />
  <!-- JMX Support for the Tomcat server. Documentation at /docs/non-existent.html -->
  <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
 
  <!-- Global JNDI resources
       Documentation at /docs/jndi-resources-howto.html
  -->
  <GlobalNamingResources>
    <!-- Editable user database that can also be used by
         UserDatabaseRealm to authenticate users
    -->
    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
 
	<Resource name="GESTAPLI" auth="Container" type="javax.sql.DataSource"/> 
	<ResourceParams name="GESTAPLI">  
		<parameter>
			<name>factory</name>
			<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
		</parameter>  
		<parameter>
			<name>driverClassName</name>
			<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
		</parameter>  
		<parameter>
			<name>url</name>
			<value>jdbc:microsoft:sqlserver://10.1.1.30:1433;DatabaseName=GESTAPLI</value>
		</parameter>  
		<parameter>
			<name>username</name>
			<value>DI</value>
		</parameter>  
		<parameter>
			<name>password</name>
			<value>1259374</value>
		</parameter>
  		<parameter>
  			<name>maxActive</name>
  			<value>20</value>
  		</parameter>
  		<parameter>
  			<name>initialSize</name>
  			<value>0</value>
  		</parameter>
  		<parameter>
  			<name>maxWait</name>
  			<value>-1</value>
  		</parameter>  
  		<parameter>
  			<name>removeAbandoned</name>
  			<value>true</value>
  		</parameter>  
  		<parameter>
  			<name>removeAbandonedTimeout</name>
  			<value>300</value>
  		</parameter>  
  		<parameter>
  			<name>timeBetweenEvictionRunsMillis</name>
  			<value>120000</value>
  		</parameter>  
  		<parameter>
  			<name>minEvictableIdleTimeMillis</name>
  			<value>60000</value>
  		</parameter>  
  		<parameter>
  			<name>poolPreparedStatements</name>
  			<value>true</value>
  		</parameter>  
  		<parameter>
  			<name>maxOpenPreparedStatements</name>
  			<value>100</value>
  		</parameter>
	</ResourceParams>
  </GlobalNamingResources>
 
  <!-- A "Service" is a collection of one or more "Connectors" that share
       a single "Container" Note:  A "Service" is not itself a "Container", 
       so you may not define subcomponents such as "Valves" at this level.
       Documentation at /docs/config/service.html
   -->
  <Service name="Catalina">
 
    <!--The connectors can use a shared executor, you can define one or more named thread pools-->
    <!--
    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" 
        maxThreads="150" minSpareThreads="4"/>
    -->
 
 
    <!-- A "Connector" represents an endpoint by which requests are received
         and responses are returned. Documentation at :
         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
         Java AJP  Connector: /docs/config/ajp.html
         APR (HTTP/AJP) Connector: /docs/apr.html
         Define a non-SSL HTTP/1.1 Connector on port 8080
    -->
    <Connector port="7070" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />
    <!-- A "Connector" using the shared thread pool-->
    <!--
    <Connector executor="tomcatThreadPool"
               port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" />
    -->           
    <!-- Define a SSL HTTP/1.1 Connector on port 8443
         This connector uses the JSSE configuration, when using APR, the 
         connector should be using the OpenSSL style configuration
         described in the APR documentation -->
    <!--
    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
    -->
 
    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
 
 
    <!-- An Engine represents the entry point (within Catalina) that processes
         every request.  The Engine implementation for Tomcat stand alone
         analyzes the HTTP headers included with the request, and passes them
         on to the appropriate Host (virtual host).
         Documentation at /docs/config/engine.html -->
 
    <!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">         
    --> 
    <Engine name="Catalina" defaultHost="localhost">
 
      <!--For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation) -->
      <!--
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
      -->        
 
      <!-- The request dumper valve dumps useful debugging information about
           the request and response data received and sent by Tomcat.
           Documentation at: /docs/config/valve.html -->
      <!--
      <Valve className="org.apache.catalina.valves.RequestDumperValve"/>
      -->
 
      <!-- This Realm uses the UserDatabase configured in the global JNDI
           resources under the key "UserDatabase".  Any edits
           that are performed against this UserDatabase are immediately
           available for use by the Realm.  -->
      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
             resourceName="UserDatabase"/>
 
      <!-- Define the default virtual host
           Note: XML Schema validation will not work with Xerces 2.2.
       -->
      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
 
        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->
 
        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"  
               prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
        -->
 
      </Host>
    </Engine>
  </Service>
</Server>
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 11h47   #10
Membre éprouvé
 
Inscription : janvier 2006
Messages : 352
Détails du profil
Informations personnelles :
Âge : 45
Localisation : Suisse

Informations forums :
Inscription : janvier 2006
Messages : 352
Points : 419
Points : 419
Le fichier server.xml semble correct. Par contre, le message d'erreur spécifie que le nom GESTAPLI n'est pas trouvé dans le contexte. J'aurais donc tendance à en déduire qu'il essaye de trouver le nom JNDI local "java:comp/env/GESTAPLI" et non pas juste "GESTAPLI".

Pour cela il te faut impérativement déclarer le contexte de ton appli "home", soit directement dans server.xml, soit dans un fichier de contexte distinct (dans webapp), et déclarer dans ce contexte la référence vers le datasource global GESTAPLI. De cette façon le nom JNDI "java:comp/env/GESTAPLI" sera défini.

Jacques Desmazières
Jacques - 06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 11h52   #11
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Alors j'essaie de créer le fichier de contexte directement dans le server.xml mais le probleme c'est où le mettre, parce que j'imagine qu'il faut mettre la balise <Context> à un endroit bien précis.
Sinon, le mettre dans webapp... dans le .war??? ou comme ça dans le dossier webapp?
Je te remercie quand même de prendre du temps sur toi;
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 12h19   #12
Membre éprouvé
 
Inscription : janvier 2006
Messages : 352
Détails du profil
Informations personnelles :
Âge : 45
Localisation : Suisse

Informations forums :
Inscription : janvier 2006
Messages : 352
Points : 419
Points : 419
Pour moi le plus simple est de créer un fichier de contexte dans le répertoire webapp. Pour cela, il faut que tu déplaces ton fichier war afin qu'il ne soit pas déployé automatiquement par Tomcat. Tu crées un fichier de contexte que tu peux nommer comme ton fichier war mais avec l'extension xml, et tu y mets quelque chose qui devrait ressembler à ça:
Code :
1
2
3
<Context path="/home" docBase="D:/temp/home.war" debug="0">
	<ResourceLink name="GESTAPLI" global="GESTAPLI" type="javax.sql.DataSource"/>
</Context>
Jacques Desmazières
Jacques - 06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2007, 14h09   #13
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
bon je viens de rajouter le fichier xml dans le dossier webapss avec pour le chemin "/home/.../home.war" et résultat ben toujours pareil, GESTAPLI n'est pas lié au contexte.
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2007, 20h01   #14
Membre du Club
 
Inscription : mars 2006
Messages : 58
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mars 2006
Messages : 58
Points : 58
Points : 58
Hello,

Alors j'ai aussi pas mal galèrer avec le setup d'une ressource jdbc avecTomcat et JNDI (setup différent presqu'à chaque nouvelle version de tomcat...)
Alors finalement, la config pour tomcat 6 me semble assez simple :
dans ton application web, dans le répertoire META-INF, tu crées un fichier context.xml qui ressemble à ça :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/BlaBla" debug="1" reloadable="true">
	<Resource 
		name="jdbc/BlaDB" 
		auth="Container" 
		type="javax.sql.DataSource" 
		maxActive="10" 
		maxIdle="3" 
		maxWait="10000" 
		username="bla_admin" 
		password="bla_admin" 
		driverClassName="com.mysql.jdbc.Driver"
		url="jdbc:mysql://localhost:3306/bladb"
	/>
 
</Context>
et ensuite la reference dans web.xml (qui ne semble pas nécessaire avec JPA)
et pas de probleme

AUCUNE modification des fichiers de tomcat...

edit :
je viens de tester sans passer par JPA, acquérir la ressource et obtenir une connection ne nécéssite aucune modif de web.xml
Code :
1
2
3
4
 
initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/BlaDB");
YeFFreY est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/05/2007, 15h44   #15
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
Ok merci à toi YeFFrey, je testerais ça plutard (on m'a fait passé à autre chose de plus important, Subversion )
Dès que je recommencerais à essayer de faire marcher tomcat 6 je te ferais signe.
Encore merci!!!
+
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2007, 15h31   #16
Invité de passage
 
Inscription : mai 2007
Messages : 14
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 14
Points : 0
Points : 0
hey YeFFreY, ça y est je viens de tester, mais j'ai toujours la même erreur que avant.
Je n'ai rajouté que context.xml dans le dossier META-INF de mon war.
Je n'ai que ce fichier qui spécifie les pools de connexion, rien dans le server.xml de tomcat, que dans le META-INF.
Rien à faire je me fais toujours jetter par Tomcat.
Je ne sais que faire et je m'en remet à toi pour savoir où donner de la tête.
Dvoraky est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2008, 11h28   #17
Futur Membre du Club
 
Inscription : mars 2005
Messages : 35
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 35
Points : 18
Points : 18
Salut,
il y a un truc qui me chiffonne dans tout ça : dans mon Tomcat 6, je n'ai pas la librairie commons-dbcp.jar contenant la factory org.apache.commons.dbcp.BasicDataSourceFactory !?!

Comment se fait-ce ? Moi je n'ai que la librairie tomcat-dbcp.jar ! Et avec celle-ci, j'ai des problèmes aussi ...
OphyTe est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h08.


 
 
 
 
Partenaires

Hébergement Web