Redirecinamento

8 respostas
C

Oi pessoal, estou começando agora a programar profissionalmente, por enquanto só via na teoria.

Mas o que estou precisando é como que eu faço um redirecionamento para outro site depois que eu faço login.

por exemplo ainda nao tem quase nada pronto, eu consigo fazer o servlet enchergar o que eu digito no campo login, mas nao consigo direcionar para outra pagina

public class Controle extends HttpServlet{

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
	processRequest(request, response);
}
	
public void doPost(HttpServletRequest request, HttpServletResponse response)
	throws ServletException, IOException {		
	
	String acao = request.getParameter("action");
	if (acao.equals("login")){
		//response.sendRedirect("http://www.fusionsoftware.com.br");
		//request.getRequestDispatcher("../error.jsp").forward( request, response );
		RequestDispatcher rd = getServletContext().getRequestDispatcher("/web/controle/Controle");
		rd.forward( request, response );
		response.sendRedirect("../error.jsp");
	}
	else{
		//response.sendRedirect("http://www.uol.com.br");
		getServletContext().getRequestDispatcher("http://www.uol.com.br").forward( request, response );
	}
		
	String user = request.getParameter("login");
		
	Modelo model = new Modelo();
	model.setNome(user);
		
	model.criar();
		
	request.setAttribute("_mensagem","Registro ["+user+acao+"] efetuado com sucesso.");
	
	request.setAttribute("_voltar","http://www.usialto.com.br:8080/web");
		
	//response.sendRedirect("../alert.jsp");
	request.getRequestDispatcher("../alert.jsp").forward( request, response );
		
	}

}
o erro é
exception 

java.lang.IllegalStateException
	org.apache.coyote.tomcat5.CoyoteResponseFacade.sendRedirect(CoyoteResponseFacade.java:399)
	br.com.usialto.controle.Controle.doPost(Controle.java:59)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
Obrigado desde já, Chari

8 Respostas

R

Olá!!!
Tem várias formas de se fazer em JSP, mas agora eu não me lembro de uma, vc pode ir no tutorial do portaljava q com certeza tem…
Eu tenho pelo menos uma dica… em javascript…
Coloque o seguinte fora das tags JSP:

script location.href="URL_para_onde_vc_quer_ir"/script

Espero ter te ajudado!!! :wink:

OBS: a palavra script de estar entre tags HTML

C

eu queria saber se só preciso usar o “getRequestDispatcher” para chamar uma url depois de passar pelo servlet

R

[color=“darkblue”]Bem, eu não sei oq essa função faz, mas se ela redireciona então vc pode usá-la sim… ;)…
Mas dê uma pesquisada nos tutoriais do site que tem mais informações importantes a respeito disso :slight_smile:

[]'s[/color]

eltonk

um exemplo:

request.getRequestDispatcher("/jsp/relatorio/gera_relatorio_filiacao.jsp").forward(request, response);

[]'s

S

Cara eu faco do seguinte modo :

getServletContext().getRequestDispatcher(response.encodeURL(“mypagina.jsp”)).forward(request, response);

C
getServletContext().getRequestDispatcher(response.encodeURL("http://www.uol.com.br")).forward( request, response );

Estou tentando direcionar uma pagina HTML, eu posso ou só rediciona paginas JSP?

M

redireciona pra qualquer lugar…

C

nao funciona, dá varios erros

Criado 5 de agosto de 2004
Ultima resposta 9 de ago. de 2004
Respostas 8
Participantes 5