Foros del Web » Programación para mayores de 30 ;) » Java »

Duda Filtro

Estas en el tema de Duda Filtro en el foro de Java en Foros del Web. Muy buenas, he añadido un filtro en mi aplicacion web para que nose permita el acceso a ciertas zonas de la web si no estas ...
  #1 (permalink)  
Antiguo 29/05/2013, 05:03
Avatar de rgf1987  
Fecha de Ingreso: diciembre-2012
Ubicación: Asturias
Mensajes: 269
Antigüedad: 11 años, 4 meses
Puntos: 22
Duda Filtro

Muy buenas,

he añadido un filtro en mi aplicacion web para que nose permita el acceso a ciertas zonas de la web si no estas correctamente logueado, el filtro funciona pero no entiendo muy bien porque me pasa dos veces, cuando en realidad deberia pasarme solo una.
El codigo es el siguiente:

Código JAVA:
Ver original
  1. public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
  2.         // TODO Auto-generated method stub
  3.         // place your code here    
  4.         HttpServletResponse httpResponse = ((HttpServletResponse)response);
  5.         HttpServletRequest httpRequest = ((HttpServletRequest) request);
  6.         UsuarioVO usuario = (UsuarioVO) httpRequest.getSession().getAttribute("usuario");
  7.        
  8.         if(usuario!=null && usuario.getNivelUsuario()==4){
  9.             System.out.println("EL FILTRO ESTA FUNCIONANDO");
  10.             chain.doFilter(request, response);
  11.         }
  12.         else{
  13.             httpResponse.sendRedirect(httpRequest.getContextPath()+"/gestionErrores.htm");
  14.         }
  15.        
  16.     }

Y este es el mapeo en el web.xml de mi aplicacion:

Código XML:
Ver original
  1. <filter>
  2.     <filter-name>FiltroAccesoAutores</filter-name>
  3.     <filter-class>filters.FiltroAccesoAutores</filter-class>
  4.    </filter>
  5.     <filter-mapping>
  6.         <filter-name>FiltroAccesoAutores</filter-name>
  7.         <url-pattern>/privado/*</url-pattern>
  8.     </filter-mapping>

Y este al controlador que accede si se pasa el filtro correctamente, que me retorna a una JSP:

Código JAVA:
Ver original
  1. @Controller
  2. public class ControladorGestionErrores {
  3.     @RequestMapping("gestionErrores")
  4.     public String gestionErrores(ModelMap modelo) throws IOException {
  5.         System.out.println("LLEGAMOS AL CONTROLADOR");
  6.         return "errorAcceso";      
  7.     }
  8. }

cuando llamo por ejemplo a privado/administracion.htm estando logueado correctamente
El mensaje "EL FILTRO ESTA FUNCIONANDO" se me imprime dos veces por consola, lo que indica que el filtro pasa dos veces.. y no entiendo porque... alguien que me pueda resolver esta duda?

Etiquetas: jsp, servlet, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:00.