PDA

View Full Version : Errore al login nell'applicazione web


angelo112112
18-08-2015, 13:39
Buongiorno a tutti, ho bisogno del vostro aiuto:

in poche parole mi è stato dato il codice sorgente di un applicazione web perchè devo fare delle modifiche. L'applicazione è stato creato con netbeans, apache, tomcat, mysql e ajax con linguaggio jsp, servlet.

Ho caricato il codice sorgente su netbeans con i seguenti passaggi:
-new project-java web-web application with existing sources;
-ho impostato apache tomcat 7.
-Il database l'ho collegato a phpmyadmin.

Successivamente, per collegare il database al progetto ho eseguito le seguenti operazioni:
- tasto destro sul progetto-new-entity classes from database (ho fatto bene)?

Successivamente, avvio il progetto, effettuo il login e mi da i seguenti errori:


HTTP Status 500 -

type Exception report

message

description The server encountered an internal error that prevented it from fulfilling this request.

exception

java.lang.NullPointerException
it.michele.therio.userManagemenrServelts.Login.processRequest(Login.java:44)
it.michele.therio.userManagemenrServelts.Login.doPost(Login.java:91)
javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.56 logs.


Vi prego aiutatemi.

tomminno
19-08-2015, 09:42
Dallo stacktrace, io controllerei il file Login.java alla riga 44, evidentemente sta cercando di usare una variabile non inzializzata...

angelo112112
19-08-2015, 11:30
ti invio il sorgente integrale del "it.michele.therio.userManagemenrServelts.Login.processRequest", dimmi se trovi qualcosa che non va perchè non sono riuscito a trovare niente....

package it.michele.therio.userManagemenrServelts;

import it.michele.therio.beans.Utenti;
import it.michele.therio.managers.UserManager;
import java.io.IOException;
import java.io.Writer;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@WebServlet(name = "Login", urlPatterns = {"/login"})
public class Login extends HttpServlet {

/**
* Processes requests for both HTTP
* <code>GET</code> and
* <code>POST</code> methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
String userid = request.getParameter("username");
String password = request.getParameter("password");
UserManager userManager = UserManager.getInstance();
Utenti user = userManager.checkAuthentication(userid, password);
System.out.println("Utente: " + user.getNome());
HttpSession session = request.getSession();
if (user == null) {
session.setAttribute("error", "Verifica nome utente e password.");
response.sendRedirect("login_error.jsp");
}
session.setAttribute("user", user);
String referer = request.getHeader("Referer");
response.sendRedirect(referer);

} catch (Exception ex) {
System.out.println(ex.getCause().getMessage());
}
}

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**
* Handles the HTTP
* <code>GET</code> method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}

/**
* Handles the HTTP
* <code>POST</code> method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
processRequest(request, response);
}

/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>

angelo112112
19-08-2015, 16:03
Aggiornamento: il problema è che l'applicazione non si connette al database di phphmyadmin......

avete idea di come si collega?