salut a tous. au moment je d'enregistrer les informations des multiples utilisateurs de mon site, je crypte le mot de passe comme-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
17
18
19
20
21
22
23
24
25
 
private void traiterMotsDePasse( String motDePasse, String confirmation, Utilisateur utilisateur ) {
		try {
			validationMotsDePasse( motDePasse, confirmation );
		} catch (FormValidationException e ) {
			setErreur( CHAMP_PASS, e.getMessage() );
			setErreur( CHAMP_CONF, null );
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		/**
                 * Utilisation de la bibliothèque Jasypt pour chiffrer le mot de pass éfficacement.
                 *
                 * L'algorithme SHA-256 est ici utilisé, avec par défaut un salage
                 * aléatoire et un grand nombre d'itérations de la fonction de hashage.
                 *
                 * La String retournée est de longueur 56 et contient le hash en Base64.
                 */
		ConfigurablePasswordEncryptor passwordEncryptor = new ConfigurablePasswordEncryptor();
		passwordEncryptor.setAlgorithm(ALGO_CHIFFREMENT );
		passwordEncryptor.setPlainDigest( false );
		String motDePasseChiffre = passwordEncryptor.encryptPassword(motDePasse);
		utilisateur.setMotDePasse(motDePasseChiffre );
	}
au moment de les authentifier, je procède comme suit :

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
 
public boolean connecterUtilisateur( HttpServletRequest request ) {
		/* Récupération des champs du formulaire */
		boolean conn=false;
		String matricule = getValeurChamp( request, CHAMP_MATRICULE );
		String motDePasse = getValeurChamp( request, CHAMP_PASS );
		Utilisateur utilisateur = new Utilisateur();
		try {
			/**
                         * Utilisation de la bibliothèque Jasypt pour chiffrer le mot de pass éfficacement.
                         *
                         * L'algorithme SHA-256 est ici utilisé, avec par défaut un salage
                         * aléatoire et un grand nombre d'itérations de la fonction de hashage.
                         *
                         * La String retournée est de longueur 56 et contient le hash en Base64.
                         */
			traiterMotsDePasse(motDePasse, utilisateur );
			ConfigurablePasswordEncryptor passwordEncryptor = new ConfigurablePasswordEncryptor();
			passwordEncryptor.setAlgorithm(ALGO_CHIFFREMENT );
			passwordEncryptor.setPlainDigest(false);
			String motDePasseChiffre = passwordEncryptor.encryptPassword(motDePasse);
			utilisateur.setMotDePasse(motDePasseChiffre );
 
			traiterMatricule(matricule, utilisateur);
			utilisateur.setMatricule(matricule);
 
			boolean user=utilisateurDao.Authentifcate(utilisateur);
			if (erreurs.isEmpty() && user==true) {
				resultat = "Connexion Reussie.";
				conn=true;
			} else {
				resultat = "Échec de connexion.";
			}
		} catch ( DAOMoptgisException e ) {
			resultat = "Échec de connexion : une erreur imprévue est survenue, merci de réessayer dans quelques instants.";
			e.printStackTrace();
		}
		return conn;
	}
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
 
public boolean Authentifcate(Utilisateur utilisateur){
		java.sql.Connection connexion = null;
		PreparedStatement preparedStatement = null;
		ResultSet resultSet = null;	
		boolean count=false;
		try {
			/* Récupération d'une connexion depuis la Factory */
			connexion = this.moptGisFactory.getConnection();
			preparedStatement=connexion.prepareStatement(connectUser);
			preparedStatement.setString(1, utilisateur.getMatricule());
			preparedStatement.setString(2, utilisateur.getMotDePasse());
			resultSet=preparedStatement.executeQuery();
			while(resultSet.next()){
				String mat=resultSet.getString(resultSet.findColumn("matricule"));
				String password=resultSet.getString( resultSet.findColumn("mot_de_passe" ));
				if(mat.equalsIgnoreCase(utilisateur.getMatricule()) && password.equalsIgnoreCase(utilisateur.getMotDePasse())){
					System.out.println("Succes d'Authentification");
					utilisateur.setMatricule(mat);
				}
				 count=true;
			}
			if(!resultSet.next()){
				throw new DAOMoptgisException( "Échec de connexion de l'utilisateur, aucune ligne trouvée  dans la table." );
			}
 
		} catch ( SQLException e ) {
			throw new DAOMoptgisException( e );
		} catch ( DAOMoptgisException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
			fermeturesSilencieuses( resultSet, preparedStatement, connexion );
		}
		System.out.println(count);
		return count ;
	}
voici l'erreur qu'il me renvoit:
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
 
 Échec de connexion de l'utilisateur, aucune ligne trouvée  dans la table.
	at com.mtn.database.UtilisateurDaoImpl.Authentifcate(UtilisateurDaoImpl.java:214)
	at com.mtn.form.ConnexionForm.connecterUtilisateur(ConnexionForm.java:81)
	at com.mtn.controller.Connexion.doPost(Connexion.java:87)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
false
que faire pour résoudre ce problème ?