response.sendRedirect () de jsp: ¿incluye ser ignorado?
Tengo un archivo jsp, que incluye otro archivo jsp para verificar algunos valores y tales:
<jsp:include page="setup.jsp" />
Dentro de setup.jsp Tengo un código condicional que determina si algunos valores necesarios se establecen en la sesión y, si no, los redirige a una página diferente. O al menos se supone que debe hacerlo, pero la redirección parece estar siendo ignorada.
System.err.println("Redirecting!");
response.sendRedirect("http://www.google.com");
return;
Veo "Redireccionamiento" inicie sesión en la consola, pero la página continúa y se procesa normalmente. Tuve que volcar los encabezados por mí y vi que la respuesta esHTTP/1.1 200 OK
por lo que definitivamente no está enviando una redirección 302.
¿Alguna idea de cuál es el problema y cómo puedo solucionarlo?
EDIT: he verificado que mi respuesta aún no se ha confirmado. @response.isCommitted()
devolucionesfalse
significa que el código de estado y los encabezados aún no se han enviado.
EDIT 2: he intentado llamar aresponse.sendRedirect()
en muchos otros lugares y descubro que puedo redirigir con éxito antes del. La redirección dentro del JSP parece ser ignorada y si trato de redireccionar justo DESPUÉS del jsp, obtengo una excepción de estado ilegal porque la respuesta ya se ha confirmado.