Visualizzazione dei risultati da 1 a 3 su 3

Discussione: servlet di login

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    16

    servlet di login

    Salve, stò realizzando un progetto con Netbeans. Per creare una sessione per gli utenti ho fatto così:ho una pagina html che chiede user e pws con una form, poi richiala una servlet di login, questa nel metodo post fa questo

    String username = request.getParameter("username");
    String password = request.getParameter("password");

    Socio s = login.executeLogin(username, password);
    if(s==null)
    response.sendRedirect("index.html");
    HttpSession sessione = request.getSession(true);
    sessione.setAttribute("socio", s);
    if(s.getUsername().equals("admin"))
    response.sendRedirect("Gestione.jsp");
    else
    response.sendRedirect("Personale.jsp");

    dove login è preso da GestoreLoginLocal che è una servlet con questo codice

    @Stateless
    public class GestoreLogin implements GestoreLoginLocal {
    @PersistenceContext
    private EntityManager em;

    public Socio executeLogin(String username, String password) {
    Socio s = em.find(Socio.class, username);
    if(s == null){
    return null;
    }
    else{
    if (!(s.getPassword().equals(password)))
    return null;
    else{
    return s;
    }
    }
    }
    }
    ma se provo a fare la login mi dà questo errore:
    The server encountered an internal error () that prevented it from fulfilling this request.

    exception

    javax.ejb.EJBException


    il database è corretto e si connette, inoltre usando una servlet di login modificata, cioè senza sessione funziona. Dove è l'errore? può essere il find?
    Ci provo da ieri, help me!!!

  2. #2
    attenzione: sopo la sendRedirect ti serve un return; altrimenti vengono eseguite anche le istruzioni successive...
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    16
    Si, ho dimenticato la return, ma non è quello il problema. Ho fatto queste classi perchè mi serve una sessione per l'utente, magari c'è un modo più semplice. Il socio può entrare nell'area soci facendo una login e navigarci dentro, iscrivendosi se vuole a dei corsi, però senza la sessione se faccio back devo riloggarmi. Per creare una sessione ho creato un gestore di login e poi nella servlet di login scrivo
    HttpSession sessione = request.getSession(true);
    sessione.setAttribute("socio", s);
    così prendo la sessione attiva o se non c'è la creo, perchè ho scritto true fra parentesi. E' giusto oppure sbaglio tutto? scusate ma è il mio primo esame con servlet, bean, etc.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.