Redirecionar pagina sem continuar o codigo em baixo

8 respostas
S

Galeréra eu gostaria de redirecionar minha pagina em uma determinada condição, porem não gostaria que o java continua-se a compilar o resto da pagina quando fosse redirecionado , tem como ???

exemplo

Citação:

codigocodigo
codigo
codigo
codigo

[Condição]
response.sendRedirect(“empty.jsp”);
// não queria mais que continuase a executar oque vier embaixo

tem como ???hehehehe

8 Respostas

marcos.junqueira

compilar ele vai compilar de qualquer jeito…

if(x==y) {redireciona; return} else {continua;}
maquiavelbona

response.sendRedirect(“empty.jsp”) envia para o browser um header do tipo “Location: empty.jsp”. Esse é um tipo de redirecionamento client-side e acontecerá enquanto estiver na parte da construção do header do cliente.

Para o que queres, terás que usar RequestDispatcher.forward ou jsp:forward. Ele interrompe o stream para o cliente e passa para a proxima página. Esse é um redirecionamento server-side e acontecerá enquanto a rederização na parte do servidor.

Até!

S

mais como eu indico para o meu RequestDispatcher.forwar

qual pagina ele deve ir??
não tem como ??

ele só volta a pagina??

maquiavelbona

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { RequestDispatcher rd = request.getRequestDispatcher("/empty.jsp"); rd.forward(request, response); }

sergiotaborda

saga_fuel:
Galeréra eu gostaria de redirecionar minha pagina em uma determinada condição, porem não gostaria que o java continua-se a compilar o resto da pagina quando fosse redirecionado , tem como ???

exemplo

Citação:

codigocodigo
codigo
codigo
codigo

[Condição]
response.sendRedirect(“empty.jsp”);
// não queria mais que continuase a executar oque vier embaixo

tem como ???hehehehe

simplesmente coloque return; quando quiser parar de executar.

S

maquiavelbona esse código não tem como eu colocar diréto na minha pagina JSP???

rbrugnollo

alguem conseguiu?!

estou com o mesmo problema... devo redirecionar a página e parar a execução do código senão o mesmo dará erro... já tentei as seguintes formas:

response.sendRedirect(response.encodeRedirectURL(Config.webRoot+"login/login.jsp"));

response.setStatus(HttpServletResponse.SC_PRECONDITION_FAILED);
response.setHeader("Location", Config.webRoot+"login/login.jsp");
            
RequestDispatcher rd = request.getRequestDispatcher("/login/login.jsp");  
rd.forward(request, response);
out.println("teste");
            
pageContext.forward("/login/login.jsp");
out.println("<script>top.document.location.href='"+Config.webRoot+"/login/login.jsp';</script>");

nenhum com sucesso :(

rbrugnollo

bom… se alguem tiver a mesma dúvida… a solução é a seguinte :

out.println("<script>top.document.location.href='"+Config.webRoot+"/login/login.jsp';</script>"); return;

valeu!

Criado 23 de fevereiro de 2007
Ultima resposta 10 de jul. de 2008
Respostas 8
Participantes 5