Messages
du sujet
Problème de connexion JSP-JDBC (MySQL) |
chriqi
Ville : Rabat
Membre depuis : 19 juil. 2004
Messages : 3
|
19 juil. 2004 à 15:53
bonjour tout le monde,
j'ai rencontré trois problèmes majeurs:
1)le premier problème dont je souffre c'est l'execution des packages (malgré la cofiguration classpath sinon vous m'indiquer comment configurer cette variable pour complier les exemples de ce livre) mais l'execution ça se passe bien sans utilser "package com.eteks.test"
2)le deuxième problème c pour la connexion à la base de donnée (MySQL) avec JDBC malgré que j'ai exécuté toutes les étapes comme ci-indiqué dans les 171 et 172 le pb c'est que dq j'ai mis le fichier d'archive "mysql-connector-java-3.0.11-stable-bin.jar" ds le sous répertoire lib du répertoire jdk1.3 la connexion ça marche pas.j'ai résolu le pb en décomprssanr ce fichier d'archive et et de mettre les 2 dossiers (com & org) avec les fichier java et ds ce cas la compilation et l'execution (de l'exemple "TestConnexionJDBC" de la page 170 mais tjrs sans lemote package com.eteks.test) ça se passe très bien
3)le problème majeur c'est que au niveau de JSP j'ai essayé de lier une page jsp au SGBDR (MySQL) mais ça marche pas, malgré que j'ai téléchargé le fichier du driver JDBC "mysql-connector-java-3.0.11-stable.zip" je pense que le problème c'est que je n'ai pas arrivé de mettre le fichier d'archive"mysql-connector-java-3.0.11-stable-bin.jar" dans le bon répertoire.
je porte à votre connsaissance que je travaille dans le sous dossier "ROOT" du dossier "webapps" de Tomcat comme ci-indiqué dans la page203 et même le fichier d'archive je l'ai placé ds le même dossier ROOT dont lequel je travaille mais ça marche pas...
pour la connexion de la page JSP avec la base de donnée Ms Access ça se passe très bien.
voici un exemple
<%@ page import="java.sql.*" %>
<%@ page import=" javax.swing.JOptionPane"%>
<html><head><title>page</title></head><body>
<%
Connection connexion = null ;
Statement instruction = null ;
String user = "root" ;
String password = null;
String t1 = request.getParameter("nom");
String t2 = request.getParameter("tel");
String t3 = request.getParameter("fax");
String t4 = request.getParameter("mail");
String t5 = request.getParameter("adresse");
String t6 = request.getParameter("ville");
String t7 = request.getParameter("activite");
String t8 = request.getParameter("info");
String t9 = request.getParameter("obs");
try {
// Chargement du pilote JDBC
Class.forName("com.mysql.jdbc.Driver");
// Connexion
connexion = DriverManager.getConnection("jdbc:mysql://localhost:3306/acceuil", user, password);
instruction = connexion.createStatement();
instruction.executeUpdate("INSERT INTO acceuil VALUES ('"+t1+"','"+t2+"','"+t3+"','"+t4+"','"+t5+"','"+t6+"','"+t7+"','"+t8+"','"+t9+"')");
}
catch ( ClassNotFoundException k)
{
System.err.println("Erreur lors du chargement du pilote : " + k);
}
catch (SQLException sqle)
{
System.err.print("Erreur SQL : " + sqle);
}%>
<jsp:forward page="index.jsp" />
</form>
</body>
</html>
je remercie la personne qui pourra me depanner!!
|
Manu
Ville : Paris / France
Membre depuis : 29 avr. 2003
Messages : 394
|
22 juil. 2004 à 12:11
Bonjour chriqi,
> 1)le premier problème dont je souffre c'est l'execution des packages (malgré la cofiguration classpath sinon vous m'indiquer comment configurer cette variable pour complier les exemples de ce livre) mais l'execution ça se passe bien sans utilser "package com.eteks.test"
Evitez la variable d'environnement CLASSPATH, et utilisez de préférence l'option -classpath de la commande java.
Si vous voulez absolument utiliser la variable d'environnement CLASSPATH pour citer le ou les dossiers où sont les classes de votre programme, attribuez lui le chemin qui correspond à la racine des dossiers des packages. Par exemple, pour l'application de classe com.eteks.test.ApplicationTest enregistrée dans un fichier du type c:\projet\com\eteks\test\ApplicationTest.class, la variable CLASSPATH sera égale à c:\projet
> 2)le deuxième problème c pour la connexion à la base de donnée (MySQL) avec JDBC malgré que j'ai exécuté toutes les étapes comme ci-indiqué dans les 171 et 172 le pb c'est que dq j'ai mis le fichier d'archive "mysql-connector-java-3.0.11-stable-bin.jar" ds le sous répertoire lib du répertoire jdk1.3 la connexion ça marche pas.
Une ruse pour le fichier mysql-connector-java-3.0.11-stable-bin.jar est de le ranger dans le dossier jre\lib\ext du répertoire du jdk (et pas dans le dossier lib).
> 3)le problème majeur c'est que au niveau de JSP j'ai essayé de lier une page jsp au SGBDR (MySQL) mais ça marche pas, malgré que j'ai téléchargé le fichier du driver JDBC "mysql-connector-java-3.0.11-stable.zip" je pense que le problème c'est que je n'ai pas arrivé de mettre le fichier d'archive"mysql-connector-java-3.0.11-stable-bin.jar" dans le bon répertoire.
> je porte à votre connsaissance que je travaille dans le sous dossier "ROOT" du dossier "webapps" de Tomcat comme ci-indiqué dans la page203 et même le fichier d'archive je l'ai placé ds le même dossier ROOT dont lequel je travaille mais ça marche pas...
> pour la connexion de la page JSP avec la base de donnée Ms Access ça se passe très bien.
Il faut ranger le fichier mysql-connector-java-3.0.11-stable-bin.jar dans le sous-dossier WEB-INF\lib du dossier ROOT et pas directement dans le dossier ROOT.
J'espère que ces réponses pourront vous aider à avancer. Pour la configuration du classpath, lisez aussi le sujet http://www.eteks.com/services/forumcahierjava1/viewSubject.jsp?subjectId=250 pour plus d'informations. --- Manu (moderator/modérateur)
|
chriqi
Ville : Rabat
Membre depuis : 19 juil. 2004
Messages : 3
|
28 juil. 2004 à 17:40
Bonjour Monsieur Manu,
J'espère que vous allez bien.
je vous remercie vivement pour vos réponses efficaces qui m'ont aidé à avancer.C'est grâce à votre aide que je me suis encouragé...Merci encore une fois Monsieur Manu et merci à tous les fondateurs et visiteurs de Ce Forum et bien évidement mes remciements à Monsieur Puybaret pour son super livre qui est sans doute le fruit de son travail continu....Bravo à tous
|
Rrominet
Ville : Lyon
Membre depuis : 29 oct. 2006
Messages : 1
|
29 oct. 2006 à 16:07
Merci pour l'info au niveau du placement du MySQL-connector.
J'avais le même problème :-)
Pourtant, bizarrement j'étais arrivé à lire dans la base auparavant... J'ai sans doute du toucher au classpath...
Autre chose, pour trouver ce problème il m'a fallu pas mal de temps parce que l'erreur n'était pas claire.
On m'a dit que de passer directement par des servlets était beaucoup mieux au niveau gestion des erreurs puisque tout était compilé et que du coup une erreur ne pouvait pas passer à travers.
Est-ce que quelqu'un a un avis là-dessus ?
|