al ingresar la página inicial es principal.html que, en menu.jsp esta para loguearse contra una base de datos, envio por post usuario y clave, a InicioSesion (servlet),
este servlet se encarga de ver si el usuario esta logueado y si lo esta lanzarme de nuevo contra principal.html pero aqui el cabecera.jsp recojera los datos de una session y verificara el tipo de usuario y el nombre del usuario para dar una bienvenida apropiada, la cuestion es que cuando logueo un usuario correcto parece que me reenviara a la misma principal.html en la que no se habia logueado nadie, asi que no me ejecuta las decisiones de cabecera.jsp para que de la bienvenida apropiada....he pensado que pudiese ser el cache del navegador, pero no estoy seguro.
voy a poner los fuentes por aqui haber si alguien me ayuda:
InicioSesion.java
Código:
cabecera.jsppackage firtsbank.servlets; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import firtsbank.principal.*; public class IniciarSesion extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doPost(req, resp); } public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { ServletContext sc = getServletContext(); Usuario usuario = new Usuario(), usuarioSesion = new Usuario(); PrintWriter out = resp.getWriter(); HttpSession sesion = req.getSession(true); ManejadorDB conector = new ManejadorDB(); String user = null, clave = null; if((usuarioSesion=(Usuario)sesion.getAttribute("usuario"))==null) { sesion.setAttribute("usuario", new Usuario()); } user = req.getParameter("usuario"); clave = req.getParameter("clave"); usuario.setusuario(user); usuario.setclave(clave); boolean valido = conector.validarUsuario(usuario); if(valido) { usuario=conector.obtenerUsuario(usuario); req.setAttribute("usuario", usuario); sesion.setAttribute("usuario", usuario); //out.println("<HTML><HEAD><H1>Bienvenido " + usuario.getusuario() + "!</H1><br></HEAD></HTML>"); String estado = usuario.getestado(); if(estado.equals("Activo")) { String tipo = usuario.gettipo(); if(tipo.equals("Cliente")) { out.println("<HTML><BODY><script> alert('Tipo= " + tipo + "');" + "</script></BODY></HTML>"); RequestDispatcher rd = req.getRequestDispatcher("/principalCliente.jsp"); rd.forward(req, resp); } else if(tipo.equals("Cajero")) { out.println("<HTML><BODY><script> alert('Tipo= " + tipo + "');" + "</script></BODY></HTML>"); RequestDispatcher rd = req.getRequestDispatcher("/principalCajero.jsp"); rd.forward(req, resp); } else if(tipo.equals("Ejecutivo")) { out.println("<HTML><BODY><script> alert('Tipo= " + tipo + "');" + "</script></BODY></HTML>"); RequestDispatcher rd = sc.getRequestDispatcher("/principal.html"); out.println("<HTML><BODY><script> alert('Url= " + getServletContext().toString() + "');" + "</script></BODY></HTML>"); rd.forward(req, resp); } } else { out.println("<HTML><BODY><script> alert('Estado= " + estado + "');" + "</script></BODY></HTML>"); } } else { out.println("<HTML><BODY><script> alert('Usuario= " + usuario.getusuario() + " invalido!');" + "history.back();</script></BODY></HTML>"); } } }
Código:
Salu2s, haber si me hechan la mano... <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <%@ page language="java" session="true" import="java.lang.*, firtsbank.principal.*" session="true" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1" %> <%! private String bienvenida=null, titulo=null; private int id=0, idPersona=0; private String respuesta=null, tipo=null, estado=null, user=null, clave=null, pregunta=null; private Usuario usuario=null; %> <%usuario=(Usuario)request.getAttribute("usuario");%> <% if(usuario!=null) { id=usuario.getId(); user=usuario.getusuario(); clave=usuario.getclave(); pregunta=usuario.getpregunta(); respuesta=usuario.getrespuesta(); tipo=usuario.gettipo(); idPersona=usuario.getIdPersona(); estado=usuario.getestado(); session.setAttribute("usuario", usuario); bienvenida="Bienvenido a Firts Bank Project " + user + "!"; if(tipo.equals("Cliente")) { titulo="Pagina Inicial de Cliente!"; } else if(tipo.equals("Cajero")) { titulo="Pagina Inicial de Cajero!"; } else if(tipo.equals("Ejecutivo")) { titulo="Pagina Inicial de Ejecutivo!"; } } else { titulo="Pagina Inicial!"; bienvenida="Bienvenido a Firts Bank Project!"; } %> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title><%=titulo%></title> <style type="text/css"> <!-- .Estilo1 { font-size: 36px; font-weight: bold; font-family: Arial, Helvetica, sans-serif; } body,td,th { color: #FFFFFF; } body { background-color: #000000; } --> </style> </head> <body> <div align="center" class="Estilo1"><%=bienvenida%></div> </body> </html>