Problème avec un système de login [Résolu]

Signaler
Messages postés
9
Date d'inscription
dimanche 12 juin 2005
Statut
Membre
Dernière intervention
22 juin 2005
-
Messages postés
9
Date d'inscription
dimanche 12 juin 2005
Statut
Membre
Dernière intervention
22 juin 2005
-
Bonjour à tous !!,

Voilà j'essaye de créer un système de connexion. Pour cela j'ai suivit
les explications données dans l'ouvrage de Karim Djaafar "Eclipse et Jboss".
Le système de login fonctione en utilisant un fichier "login.jsp" et une
servlet "LoginServletTask".

LoginServletTask :

public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {

String userName = request.getParameter("userName");
String password = request.getParameter("password");
System.out.println("doPost"+userName);
if (login(userName, password)) {
RequestDispatcher rd =
request.getRequestDispatcher("LoginSuccess");
rd.forward(request, response);
}
else {
sendLoginForm(response, true);
}
}
boolean login(String userName, String password) {
try {
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost/webstock","root","");
System.out.println("got connection");


Statement s = con.createStatement();
String sql = "SELECT USERID FROM webstockaccess" +
" WHERE NomUser='" + userName + "'" +
" AND MotDePasse='" + password + "'";

ResultSet rs = s.executeQuery(sql);
if (rs.next()) {
rs.close();
s.close();
con.close();
return true;
}
rs.close();
s.close();
con.close();
}
catch (ClassNotFoundException e) {
System.out.println(e.toString());
}
catch (SQLException e) {
System.out.println(e.toString());
}
catch (Exception e) {
System.out.println(e.toString());
}
return false;
}

Le problème c'est que j'obtiens toujours un login failed et je ne vois pas pourquoi ça ne marche pas.
Lorsque je test l'application MyEclipse Lance le debogage et m'indique l'erreur suivante :



Source not found


The source attachment does not contain the source for the file PlainSocketImpl.class.


J'ai la possibilité de cliqué sur "Change Attached Source" et d'indiquer le chemin d'un certain fichier nommé rt.jar qui se trouve dans mes fichiers d'installation de jre.( comprend pas ... ^^)
Complètement débutant en java je ne sais pas comment tester si la connexion à ma base MySql et la vérification du couple login mot de passe fonctionne correctement !
help ^^ !!! Merci d'avance.

6 réponses

Messages postés
100
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
7 octobre 2007

non, le driver n'es pas ds le classpath, d'ailleurs "java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver" indique ke la jvm ne trouve pas la classe du driver ds le classpath du projet. tu dois mettre le fichier mysql-connectorxxxxx.jar ds le dossier WEB-INF/lib de ton application web. fais le, et ça marchera... j'en suis preske sur..
Messages postés
174
Date d'inscription
lundi 23 septembre 2002
Statut
Membre
Dernière intervention
6 avril 2011
1
Ca sent le problème de classpath, vérifie ca dans ton projet.

JB@WAre
Messages postés
100
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
7 octobre 2007

Essaie de tester ton application avec tomcat, parce que je ne vois là aucun indicateur sur un probleme de classpath ou de connexion, je sens ke c'est plutot un probleme de configuration de l'EDI. le code est bon et devrait fonctionner, juste une remarque, pourkoi est ce ke tu fermes ta connexion, ton statement et ton rs deux fois?
Messages postés
100
Date d'inscription
vendredi 25 février 2005
Statut
Membre
Dernière intervention
7 octobre 2007

pourkoi tu essaies pas Class.forName("com.mysql.jdbc.Driver").newInstance(); ? ou Class.forName("org.gjt.mm.mysql.Driver")..... peut etre ke c'est la ke réside le probleme.. parce ke ds tous les codes ke j'ai vus, j'ai jamais vu kkun charger le driver de mysql avec Class.forName("com.mysql.jdbc.Driver");....
Messages postés
9
Date d'inscription
dimanche 12 juin 2005
Statut
Membre
Dernière intervention
22 juin 2005

Hello !! tout d'abord merci pour vos réponses !! c'est sympa de m'aider ! ^^

donc ... j'ai tester mon appli sous tomcat et tout fonctionne bien, j'ai juste un login failed !!! impossible de se connecter. J'ai donc testé ta solution Gattous, j'ai Modifier mon Class.forName et toujours le même souci ... login failed !!!
J'utilise Eclipse, dans la partie console, eclipse me donne ce message :


doPostJBOSS04


java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver

Donc j'en déduit que le transfert du mot de passer et du login fonctione bien par le do post, mais en fait j'ai l'impression que la requête ne s'éxécute pas. Je m'explique si je met un nom de table bidon dans ma requête genre

SELECT USERID FROM trucbidon" +
" WHERE NomUser='" + userName + "'" +
" AND MotDePasse='" + password + "'";

ben ça ne change rien j'ai juste un login failed ... y a t'il un moyen de tester la connexion sql et la requête ? moi je découvre le java, j'ai un peu de mal d'ailleur ^^ mais je m'accroche ... donc je sais pas si vous pouvez m'aider, je ne vois pas quoi donner d'autre comme précision sur mon problème.
Messages postés
9
Date d'inscription
dimanche 12 juin 2005
Statut
Membre
Dernière intervention
22 juin 2005

ça fonctionne !!
hourra ^^

Merci beaucoup !!!!!!!!
ça faisait un moment que je cherchais !!!