Citation :
import java.util.*;
import org.hibernate.*;
import com.jmd.test.hibernate.*;
import com.jmd.test.service.*;
import org.hibernate.Session;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
public class FilterLogin implements Filter{
@SuppressWarnings("unused" )
private FilterConfig config;
public void destroy() { }
@SuppressWarnings("rawtypes" )
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
System.out.println("Contrôle des identifiants de connexion." );
//On contrôle l'existence de la session
HttpSession sess = ((HttpServletRequest)request).getSession();
if(sess.getAttribute("login" ) != null && sess.getAttribute("password" ) != null){
//Si on a des données en session, c'est qu'on est connecté
chain.doFilter(request, response);
}
else{
String login = request.getParameter("login" );
String password = request.getParameter("motdepasse" );
//On vérifie ensuite si on a pas de formulaire de connexion validé if(login != null && password != null){
//Si on a des données en session, c'est qu'on est connecté
System.out.println("Il y a des données : " + login + " - " + password + " !" );
Session session = HibernateUtil.currentSession();
Transaction tx=session.beginTransaction();
java.util.List list = (List) session.createQuery("select prenom from Utilisateur where email="+login);
Iterator it = list.iterator();
while(it.hasNext())
{
Utilisateur contact = (Utilisateur)it.next();
System.out.println(contact.getNom());
}
tx.commit();
HibernateUtil.closeSession();
chain.doFilter(request, response);
}
else{
//Sinon, on retourne à la page de connexion
System.out.println("Pas de session, on oriente donc vers la page de connexion." );
request.getRequestDispatcher("index.jsp" ).forward(request, response);
}
}
}
public void init(FilterConfig config) throws ServletException {
this.config = config;
}
}
|