Bonjour,
J'ai un mal fou à configurer mon connecting pool et là, je craque un peu. Il faut dire que je lutte également contre Tomcat et son interface d'administration, j'ai fini par configurer server.xml à la main.
bon regardons ça ensemble :
server.xml d'abord :
Ensuite la méthode qui appelle ma base de données pour la première fois :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <?xml version="1.0" encoding="UTF-8"?> <Server> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/> <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/> <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/> <GlobalNamingResources> <Environment name="simpleValue" type="java.lang.Integer" value="30"/> <Resource auth="Container" description="User database that can be updated and saved" factory="org.apache.catalina.users.MemoryUserDatabaseFactory" name="UserDatabase" pathname="conf/tomcat-users.xml" type="org.apache.catalina.UserDatabase"/> <Resource driverClassName="com.mysql.jdbc.Driver" maxActive="8" maxIdle="8" maxWait="10000" name="jdbc/pano" password="tvbuilder" type="javax.sql.DataSource" url="jdbc:mysql://mercure.unige.ch/InformationPanneau" username="tvbuilder" validationQuery="SELECT 1"/> </GlobalNamingResources> <Service name="Catalina"> <Connector connectionTimeout="20000" maxHttpHeaderSize="8192" maxSpareThreads="75" maxThreads="150" minSpareThreads="25" port="8080" redirectPort="8443"> </Connector> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"> </Connector> <Engine defaultHost="localhost" name="Catalina"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/> <Host appBase="webapps" name="localhost"> <Context docBase="AffichageWeb" path="/AffichageWeb" reloadable="true" source="org.eclipse.jst.j2ee.server:AffichageWeb"> <ResourceLink global="jdbc/pano" name="jdbc/PanneauDAffichage" type="javax.sql.DataSource"/> </Context> </Host> </Engine> </Service> </Server>
ma connexion en elle-même :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 public boolean verifyLogin ( String login, String password ) throws AffichageException { Connection connection = null; ResultSet rs = null; boolean ok = false; String query = "SELECT * FROM Login WHERE (login=? AND password = PASSWORD (?)) "; try { connection = ConnectionManagerJdbc.getInstance( ).getConnection( ); PreparedStatement ps = connection.prepareStatement( query ); ps.setString( 1, login ); ps.setString( 2, password ); rs = ps.executeQuery( ); rs.first( ); if ( rs.isFirst( ) ) { ok = true; } } catch ( SQLException e ) { log.error( "LoginJdbc :: verifyLogin :: " + e.toString( ) ); } finally { closeConnection( connection ); } return ok; }
enfin j'utilise le connectJ : mysql-connector-java-3.1.14-bin.jar qui se situe dans le common/lib de tomcat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 private void initDataSource() { try { Context ctx = new InitialContext(); fDataSource = (DataSource) ctx.lookup(DATASOURCE); log.info("Connection par datasource"); } catch (NamingException e) { log.error("Erreur JNDI : " + e); return; } }
et j'utilise tomcat 5.5.9
Où est-ce que j'ai complètement faux ? Je vous remercie de votre aide, j'aimerai tellement passé à l'étape suivante![]()
Partager