Send Redirect X RequestDispatcher

Pessoal,

Faço uma verficacao para saber se o usuario pode continuar logado, caso ele nao possa mando para a pagina de login, porem estou com problemas para encaminha-lo para o login.jsp …

no Servlet faço desta maneira …

response.sendRedirect("../login.jsp");

mas como estou utilizando iframe para a pagina central a pagina de login abre nesse iframe … péssimo …


Ai tentei de outra maneira, tambem no servlet

 RequestDispatcher view = request.getRequestDispatcher("../login.jsp");
 view.forward(request, resp);

mas quando ele manda para pagina de login, nenhuma das imagens aparece e nem a formatacao de css é encontrada …
ai se olhar na URL, ela nao muda pra login.jsp ela fica com a pagina em que foi dado o submit …

Alguem sabe o que pode ser…

Obrigado…

se a senha e usuario estiver correta vc utiliza RequestDispatcher. (Envia a solicitação para outra pagina autorizada e esconde o url real)
se nao estiver vc utiliza sendRedirect. (somente redireciona para uma pagina)

cada um executa um tipo de serviço, O proprio nome ja diz…

valeu

Ae galera RESOLVIDO…

Vou registrar caso alguem passe pelo mesmo problema …

no lugar do

response.sendRedirect("../login.jsp");

eu coloquei

response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<script>parent.location.href='../login.jsp'</script>");
out.close();

isso faz com que a pagina va para o _parent ao inves de ser processada no iframe.

espero ter ajudado, ja que me ajudei =]]]

Nunca façam isso.
Isso é POG de primeira… qr dizer de ultima categoria.

[quote=alberas][quote]
response.setContentType(“text/html”);
PrintWriter out = response.getWriter();
out.println("<script>parent.location.href=’…/login.jsp’</script>");
out.close();
[/quote]

Nunca façam isso.
Isso é POG de primeira… qr dizer de ultima categoria.[/quote]

E a sua solução elegante seria…

Veja qual a sua necessidade e use corretamente ou o requestDispacther ou sendRedirect.

Elas EXISTEM e funcionam perfeitamente.

bah… veio critica o código do outro e nem ao menos da a solução assim eh facil né…

A soluçao foi dada do post anterior.

Só não coloquei o código pronto, porque não sabia qual a real necessidade.

Mas creio que aqui não seja o melhor lugar para procurar códigos prontos.

"Veja qual a sua necessidade e use corretamente ou o requestDispacther ou sendRedirect. " pra mi isto não é solução… podia ter indicado algum lugar ou como chegar à ela, e nao o codigo pronto… mas tudo bem…

no meu caso acabei nao usando o requestDispacher, e sim dei um “response.sendRedirect na url”, passando os parâmetros necessários… funciona perfeitamente… porém dessa forma os parâmetros acabam aparecendo para o usuário, e emn alguns casos isso nao eh mto vantajoso… por isso fui atrás desse requestDispacher, porém sem sucesso :frowning:

Voce tentou setar as variaveis no request?

request.setAttribute(param,value) ?

sim… funcionou, porém perdeu todo o css e js.

onde voce chama seu css tente colocar da seguinte forma

<link href="<%=request.getContextPath() %>/css/estilo.css" type=“text/css” rel=“stylesheet” media=“all”>

e a mesma coisa com o js.

blza… vou testar na primeira hora da tarde…

dai aviso o resultado aq no fórum.

tava “passando a vista” aqui no forum e fiquei curioso agora, qual foi o resultado?