Estou fazendo um aplicativo com gerenciamento de sessão utilizando cookies só que quando chamo a outra página ele retorna para página de login!!! Segue abaixo o código:
public void doPost(HttpServletRequest soli, HttpServletResponse resp)
throws ServletException, IOException{
Stringusuario=soli.getParameter("usuario");Stringsenha=soli.getParameter("senha");if(login(usuario,senha)){//Chama o cookie do navegador WebCookiecu=newCookie("usuario",usuario);Cookiecs=newCookie("senha",senha);resp.addCookie(cu);resp.addCookie(cs);resp.setContentType("text/html");PrintWriterout=resp.getWriter();//resp.sendRedirect não pode ser usado aqui, use a Meta tag para //redirecionar para o Servlet desejadoout.println("<META HTTP-EQUIV=\"REFRESH\" CONTENT=3 URL=/teste >");}else{chamaLoginForm(resp,true);}}
Antes que alguém pergunte, não tem nada a ver com a parte do código contido no else!!! Ele executa o refresh como descrito nesta linha out.println("<META HTTP-EQUIV=“REFRESH” CONTENT=3 URL=/teste >");
só não chama a URL???
Cookie cu = new Cookie("usuario", usuario);
Cookie cs = new Cookie("senha", senha);
resp.addCookie(cu);
resp.addCookie(cs);
Tu não tás chamando cookie, tás é setando um cookie.
Pra te falar a verdade, não entendi o teu código direito.
Onde tais lendo o cookie ?
Pra que usas ele ?
[]s
J
jcahgPJ
Caro renatopb,
na realidade, este código que postei é apenas um método onde é feito o redirecionamento, o métoto que chama os cookies é este login(usuario, senha), se for o caso eu posto o caso dos dois servlets, mas só poderei infelizmente, meio dia!!!
Como coloquei no tópico anterior, ele executa o refresh como descrito nesta linha out.println("<META HTTP-EQUIV=“REFRESH” CONTENT=3; URL=/teste >");
e inclusive dá o tempo especificado no “CONTENT”, só não chama a URL???
T+
JC
J
jcahgPJ
:martelada: :faca:
Segue abaixo as duas Classes Completas:
importjavax.servlet.*;importjavax.servlet.http.*;importjava.io.*;importjava.util.*;importjava.sql.*;importSTI.conecta.*;importSTI.conecta.TrataString;publicclasscookieLoginServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestsoli,HttpServletResponseresp)throwsServletException,IOException{chamaLoginForm(resp,false);}publicvoiddoPost(HttpServletRequestsoli,HttpServletResponseresp)throwsServletException,IOException{Stringusuario=soli.getParameter("usuario");Stringsenha=soli.getParameter("senha");if(login(usuario,senha)){//Chama o cookie do navegador WebCookiecu=newCookie("usuario",usuario);Cookiecs=newCookie("senha",senha);resp.addCookie(cu);resp.addCookie(cs);resp.setContentType("text/html");PrintWriterout=resp.getWriter();//resp.sendRedirect não pode ser usado aqui, use a Meta tag para //redirecionar para o Servlet desejadoout.println("<METAHTTP-EQUIV=\"REFRESH\"CONTENT=3;URL=\'ContentServlet\'>");}else{chamaLoginForm(resp,true);}}privatevoidchamaLoginForm(HttpServletResponseresp,booleanerro)throwsServletException,IOException{PrintWriterout=resp.getWriter();resp.setContentType("text/html");out.println("<HTML>");out.println("<HEAD>");out.println("<TITLE>Login</TITLE>");out.println("</HEAD>");out.println("<BODY>");out.println("<CENTER>");if(erro){out.println("<B>FalhanoLogin</B>Porfavortentenovamente<BR>");out.println("<BR>Sevocetiverdigitadocorretamenteseunomede"+"<B>UsuárioeSenha</B>,seunavegadornãoestá"+"setadoparautilizar<B>Cookies</B><BR><BR>Click"+"<AHREF=InfoPage.html>aqui</A>paramaisinformaçoes"+"decomohabilitaresetarosCookies<BR>");}out.println("<BR><BR>");out.println("<H2>PáginadeAcesso</H2><BR>");out.println("Entrecomseunomede<B>usuárioesenha</B><BR>");out.println("<BR><FORMMETHOD=POST>");out.println("<TABLE>");out.println("<TR>");out.println("<TD>Usuário:</TD>");out.println("<TD><INPUTTYPE=TEXTNAME=usuario></TD>");out.println("<TD>Senha:</Td>");out.println("<TD><INPUTTYPE=PASSWORDNAME=senha></TD>");out.println("</TR>");out.println("<TR>");out.println("<TDALIGN=RIGHTCOLSPAN=2>");out.println("<TD><INPUTTYPE=SUBMITVALUE=Acessar></TD>");out.println("</TR>");out.println("</TABLE>");out.println("</FORM>");out.println("</CENTER>");out.println("</BODY>");out.println("</HTML>");}publicstaticbooleanlogin(Stringusuario,Stringsenha){try{Conectacon=newConecta();con.conecta();StringConsulta="SELECTUSUARIO,SENHAfrom\"Login\"where"+"(USUARIO='"+TrataString.trataSql(usuario)+"')"+"AND(SENHA='"+TrataString.trataSql(senha)+"')";ResultSetrs=con.Query(Consulta);if(rs.next()){rs.close();returntrue;}}catch(SQLExceptione){System.out.println("ErronaConsulta:"+e.toString());}catch(Exceptione){System.out.println("ffffffffffff"+e.toString());}returnfalse;}}
importjavax.servlet.*;importjavax.servlet.http.*;importjava.io.*;importjava.util.*;publicclassContentServletextendsHttpServlet{publicStringloginUrl="/teste";//Processo no HTTP Get request - Pega solicitaçaopublicvoiddoGet(HttpServletRequestsoli,HttpServletResponseresp)throwsServletException,IOException{Cookie[]cookies=soli.getCookies();intlength=cookies.length;Stringusuario=null;Stringsenha=null;for(inti=0;i<length;i++){Cookiecookie=cookies[i];if(cookie.getName().equals("usuario")){usuario=cookie.getValue();}elseif(cookie.getName().equals("senha")){senha=cookie.getValue();}}if((usuario==null)||(senha==null)||!(cookieLoginServlet.login(usuario,senha))){resp.sendRedirect(loginUrl);}PrintWriterout=resp.getWriter();out.println("<HTML>");out.println("<HEAD>");out.println("<TITLE>TesteCookie</TITLE>");out.println("</HEAD>");out.println("<BODY>");out.println("JCJCJCJCJCJCJCJCJCJCJCJC");out.println("</BODY>");out.println("</HTML>");}publicvoiddoPost(HttpServletRequestsoli,HttpServletResponseresp)throwsServletException,IOException{doGet(soli,resp);}}