Bonjour,
J'ai un problème que je compends pas d'ou ça vien?
Code Erreur:
Voiçi les classes de m'application:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645) at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247) at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:284) at javax.naming.InitialContext.lookup(InitialContext.java:351) at DAO.DaoClient.<init>(DaoClient.java:19) at DAO.TestDaoClient.main(TestDaoClient.java:9) Exception in thread "main" java.lang.NullPointerException at DAO.DaoClient.ajouterClient(DaoClient.java:29) at DAO.TestDaoClient.main(TestDaoClient.java:13)
Client.java
DaoClient.java
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 package DAO; public class Client { private int idClient; private String nom; private String prenom; public Client() { super(); // TODO Auto-generated constructor stub } public Client(String nom, String prenom) { super(); this.nom = nom; this.prenom = prenom; } public int getIdClient() { return idClient; } public void setIdClient(int idClient) { this.idClient = idClient; } public String getNom() { return nom; } public void setNom(String nom) { this.nom = nom; } public String getPrenom() { return prenom; } public void setPrenom(String prenom) { this.prenom = prenom; } }
TestDaoClient.java
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 package DAO; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Hashtable; import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; public class DaoClient { Connection connexio=null; ResultSet resultat=null; DataSource dataSource; public DaoClient() { try { Context initCtx=new InitialContext(); dataSource=(DataSource) initCtx.lookup("java:comp/env/jdbc/test"); } catch (Exception e) { e.printStackTrace(); } } public int ajouterClient(Client client){ PreparedStatement requete=null; String requeteString=null; int codeErreur=0; try { connexio=dataSource.getConnection(); requeteString="INSERT INTO client(nomClient,prenomClient) VALUES(?,?)"; requete=connexio.prepareStatement(requeteString); requete.setString(1,(String)client.getNom()); requete.setString(2, (String)client.getPrenom()); client=null; codeErreur=requete.executeUpdate(); } catch (SQLException e) { codeErreur=0; // TODO Auto-generated catch block e.printStackTrace(); } return codeErreur; } }
web.xml
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 package DAO; public class TestDaoClient { /** * @param args */ public static void main(String[] args) { DaoClient daoCli=new DaoClient(); Client cli=new Client(); cli.setNom("TAKNA"); cli.setPrenom("KAWTAR"); daoCli.ajouterClient(cli); System.out.println("C bon"); } }
context.xml
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 <?xml version="1.0" encoding="UTF-8"?> <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name> demostrutsdatabase</display-name> <context-param> <param-name>dataSource</param-name> <param-value>java:/comp/env/jdbc/test</param-value> </context-param> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <resource-ref> <description>DB demostrutsdatabase Mysql Connection</description> <res-ref-name>jdbc/test</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app>
Merci de m'aider à trouver la solution.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?xml version="1.0" encoding="UTF-8"?> <Context path="/demostrutsdatabase" reloadable="true" docBase="\demostrutsdatabase"> <Ressource name="jdbc/test" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="root" password="" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" auth="Container"/> </Context>
Partager