Bonjour,

Je débute avec J2EE...
....et encore plus avec Struts !

Voilà, j'ai écrit en J2EE une classe de connexion à ma base de données contenant une méthode comme celle-ci :

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
 
public Connection connection() {
    Connection con = null;
    String hostName = "localhost:3306";
    String serverName = "dbtest";
    String user = "root";
    String password = "";
    try {
        Class.forName("com.mysql.jdbc.Driver").newInstance();
        String url = "jdbc:mysql://" + hostName + "/" + serverName;
        con = DriverManager.getConnection(url, user, password);
    } catch (Exception e) {
        System.out.println("Problème de connexion");
    }
    return con;
}
Cette application fonctionne correctement, en J2EE !

Or je veux maintenant utiliser les pull de connection Struts.
Mais sans trop modifier mon code pour l'instant !

Pour cela, j'ai défini dans mon struts-config.xml ceci :

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
 
<data-sources>
    <data-source key="madb" type="org.apache.commons.dbcp.BasicDataSource">
            <set-property
                property="driverClassName"
                value="com.mysql.jdbc.Driver" />
             <set-property
                property="url"
                value="jdbc:mysql://localhost:3306/dbtest" />
             <set-property
                property="username"
                value="root" />
             <set-property
                property="password"
                value="" />
            <set-property
                property="maxActive"
                value="10" />
            <set-property
                property="maxWait"
                value="5000" />
            <set-property
                property="defaultAutoCommit"
                value="false" />
          </data-source>
</data-sources>
et je veux changer ma méthode de connexion.
Mon problème est ici :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
public Connection connection() {
    DataSource ds = null;
    Connection cnx = null;
    try {
        ds = getDataSource(request, "madb");
        cnx = ds.getConnection();
    } catch (Exception e) {
        System.out.println("Problème de connexion");
    }
    return cnx;
}
je veux garder la structure de mon programme, et donc ma méthode de connexion.
Or, les exemples d'utilisation des DataSources impose le codage dans les requests !!!
et moi, je n'en ai pas dans cette méthode !!!
Comment faire pour y arriver ?

[ Modéré par SEMPERE Benjamin ]
Modification du titre
Les Règles du Forum