Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > Java (Servlets y JSP) > Duda sobre filtros
-Foros de debate

Java (Servlets y JSP)
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Duda sobre filtros
Enviado por nigreton el día 9 de febrero de 2008

Hola a todos, a ver si me pueden ayudar:
Tengo un filtro en mi aplicación que controla que los usuario no accedan a ninguna parte de mi aplicación a menos que se hayan registrado previamente. Para ello tengo el siguiente código:

public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException {
HttpSession sesion = ((HttpServletRequest)arg0).getSession(true);

//recojo la página a la que el usuario desea acceder
String solicitud = ((HttpServletRequest)arg0).getRequestURI();

//si esta intentando identificarse, le dejaría que lo hiciese
if ( solicitud.equals("/aplicacion/compruebaUsuario.do") || solicitud.equals("/aplicacion/index.jsp") ){
//le dejaría que siguiese navegando :( aquí es donde me falla
arg2.doFilter((HttpServletRequest)arg0, (HttpServletResponse)arg1);
}if ( sesion.getAttribute("usuario") == null ) {
//si el usuario no se ha registrado le envío a la página de inicio
((HttpServletResponse)arg1).sendRedirect(
((HttpServletRequest)arg0).getContextPath() + "/index.jsp" );
}
}

creo que el problema lo da en el arg0.dofilter, ya que entra en un bucle, y el explorador me dice "está redirigiendo el pedido para esta dirección en una forma que nunca se completará.".
¿Como haría para dejarle seguir navegando si está tratando de validarse?

Muchas gracias y un saludo a todos.

 

Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network