Salve a tutti, come da topic ho dei problemi con le jsp. Nel dettaglio sto facendo la parte iniziale ovvero la login di un sito web dinamico... La cosa che mi accade provando e riprovando più volte è che una volta loggato con username e password mi inoltra automaticamente alla pagina di errore: error.jsp....
Vi posto l'error report:
Posso capire tranquillamente che l'errore sia forse nella servlet Controller?codice:type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:370) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) controllo.Controller.doPost(Controller.java:74) javax.servlet.http.HttpServlet.service(HttpServlet.java:709) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) root cause java.lang.NullPointerException org.apache.jsp.error_jsp._jspService(org.apache.jsp.error_jsp:58) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) controllo.Controller.doPost(Controller.java:74) javax.servlet.http.HttpServlet.service(HttpServlet.java:709) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) note The full stack trace of the root cause is available in the Apache Tomcat/5.5.9 logs.
Per sicurezza vi inoltro anche la servlet:
sarei grato a tutti in qualche aiuto...codice:package controllo; import java.io.*; import java.util.HashMap; import java.util.Map; import java.util.logging.Logger; import javax.servlet.*; import javax.servlet.http.*; import action.Azione; public class Controller extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { private static final long serialVersionUID = 2537606208886487633L; private Map<String, String> comando2azione; private Map<String, String> esito2pagina; public void init() { this.comando2azione = new HashMap<String, String>(); this.comando2azione.put("login","action.AzioneLogin"); this.comando2azione.put("homeAdmin","action.AzioneHomeAdmin"); this.comando2azione.put("AdminAmministra","action.AzioneAdminAmministra"); this.comando2azione.put("RicercaAnagrafica","action.AzioneRicercaAnagrafica"); this.comando2azione.put("logout","action.AzioneLogout"); this.esito2pagina= new HashMap<String, String>(); this.esito2pagina.put("errore","/error.jsp"); this.esito2pagina.put("loginKO","/fallimento.jsp"); this.esito2pagina.put("loginOK","/login.jsp"); this.esito2pagina.put("logoutOK","/homePageAdmin.jsp"); this.esito2pagina.put("amministra","/homePageAdmin.jsp"); this.esito2pagina.put("testa","/testa.jsp");//pagina che si modifica al variare dell'utente this.esito2pagina.put("navigatore","/navigatore.jsp");//pagina che si modifica al variare delle funzioni dell'utente..ex.:navigatore di amministra: anagrafica, utenti, commesse, ordini, clienti,qualifiche, motivi this.esito2pagina.put("ricercaAnagrafica","/ricercaAnagrafica.jsp"); this.esito2pagina.put("nuovaPersona","/dettaglioAnagrafica.jsp"); this.esito2pagina.put("dettaglioPersona","/dettaglioPersona.jsp"); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Logger logger = Logger.getLogger("controllo.Controller"); String prossimaPagina = null; String comando = this.leggiComando(request.getServletPath()); logger.info("comando: " + comando); String nomeAzione = this.comando2azione.get(comando); logger.info("azione: " + nomeAzione); if (nomeAzione==null) { prossimaPagina = "/error.jsp"; } else { Azione azione = null; try { azione = (Azione)Class.forName(nomeAzione).newInstance(); String esitoAzione = azione.esegui(request); prossimaPagina = this.esito2pagina.get(esitoAzione); } catch (InstantiationException e) { prossimaPagina = "/error.jsp"; } catch (IllegalAccessException e) { prossimaPagina = "/error.jsp"; } catch (ClassNotFoundException e) { prossimaPagina = "/error.jsp"; } } ServletContext application = getServletContext(); RequestDispatcher rd = application.getRequestDispatcher(prossimaPagina); rd.forward(request, response); } private String leggiComando(String servletPath) { StringBuffer str = new StringBuffer(servletPath); return str.substring(1,str.lastIndexOf(".do")); } }
ciao

Rispondi quotando

