Bonjour,

Je suis en train de développer une application où j'ai besoin de me connecter à une BD. Dans mon premier essaye d'application, tout à très bien marché. Maintenant j'essaye de changer mon code pour faire une "Injection de ressource", mais j'ai l'erreur "java.lang.NullPointerException" à la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Connection myConn = myDataSource.getConnection();
Je pense qui j'ai un problème avec ma DataSource, qui je n'arrive pas à trouver comment la déclarer/ initialiser...

La classe qui j'utilise pour me connecter est la suivant:
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
import java.sql.*;
import javax.sql.DataSource;
import javax.annotation.Resource;
 
class ConnectionDAO {
 
	//private Connection myConn;
	@Resource(name="jdbc/testapp")
	private DataSource myDataSource;
 
	public ConnectionDAO() throws ClassNotFoundException, SQLException{
		//dataSource = myDataSource;
	}
 
	public String getName(String mec) throws SQLException{
		String nom = "";
		String SQL = "SELECT Nom FROM T_collaborateurs WHERE Mec='" + mec + "'";
 
		Connection myConn = myDataSource.getConnection();
	    Statement stmt = myConn.createStatement(); 
	    ResultSet rs = stmt.executeQuery(SQL);
	    while (rs.next()){
	        nom=rs.getString("Nom");
	    }
	    myConn.close();
	    stmt.close();
		return nom;
	}
}
et mon fichier web.xml est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
  <resource-ref>
    <description>testapp db connection</description>
    <res-ref-name>jdbc/testapp</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
Ci-dessous je mettre aussi mon fichier de context dans Tomcat:
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
<Context docBase="c:\NETDADOS\EclipseProjectsWeb\testapp\WebContent" reloadable="true" >
 
	<Resource 	name="jdbc/testapp"
				auth="Container"
				type="javax.sql.DataSource"
				factory="org.apache.commons.dbcp.BasicDataSourceFactory"
 
				driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
				url="jdbc:sqlserver://10.88.248.22:1433;databaseName=outils_gestion_DV;user=xxx;password=xxx"
 
				maxActive="10"
				maxIdle="5"
				maxWait="10000"
				removeAbandoned="true" />
</Context>
Est-ce que quelqu'un pourrait m'aider, svp?
Je vous remercie d'avance,
Marc