Olá pessoal, tentei usar sessão com os cookies bloqueados, e não tive êxito, usei o método para codificar a minha url, e consequentemente passar o id da sessao via url, e não deu certo…
public java.lang.String encodeURL(java.lang.String url)
To usando o J2SE 1.5 (5.0), com a últma versão do tomcat, 5.8 ou 5.9…
Tem que configurar alguma coisa no tomcat?
[ ]'s,
Misael Silveira
O código fonte da aplicação está aqui, abaixo:
[code]import java.io .;
import javax.servlet. ;
import javax.servlet.http.*;
public class principal extends HttpServlet {
public void doGet( HttpServletRequest req, HttpServletResponse res )
throws IOException, ServletException {
res.setContentType("text/html");
PrintWriter out = res.getWriter();
String encodeURL = res.encodeURL( req.getContextPath() + "/CalculaNumero.java");
HttpSession session = req.getSession();
session.setAttribute("admin", "Misael");
out.println("<html>");
out.println("<head><title>.:: Conversor de números Árabes para números Romanos ::.</title></head>");
out.println("<body>");
out.println("<h1>Conversor de números árabes para romanos</h1>");
out.println("<form action=\"" + encodeURL + "\" method=\"get\" name=\"FormCalcula\"><br>");
out.println("Número: <input type=\"text\" name=\"intNum\" size=\"6\" maxlength=\"4\"><br>");
out.println("<input type=\"submit\" value=\"Calcular\">");
out.println("</form>");
out.println("<br>Session id: " + session.getId());
out.println("</body>");
out.println("</html>");
}
}[/code]
O que eu não to conseguindo é reescrever a URL, pra mim nao perder a sessao na segunda página…
Olá,
não entendi porque vc quer usar cookies…
é algum trabalho que precisa ser feito com cookies necessariamente?
senão vc poderia usar session mesmo, que por sinal já tem no seu código
[]´s
Naum sei se fui claro, seguinte, quando os cookies estão habilitados aqui no navegador, a sessão funciona…
Quando eu bloqueio, eu perco a sessão…
em php que contornava o problema, passando o nome da sessao e o id da mesma via url, com java, tentei user o método encodeURL, acima citado, só que não funcionou como eu queria, bloquiei os cookies no navegador, e ele nao reescreveu a url, passando o id da sessao para mim recuperá-la mais adiante…
[ ]'s,
Misael Silveira.
Olá Misael, me desculpe, realmente eu não tinha entendido
bom, pelo que vi no javadoc seu codigo era pra funcionar, já que ele cita
The implementation of this method includes the logic to determine whether the session ID needs to be encoded in the URL. For example, if the browser supports cookies, or session tracking is turned off, URL encoding is unnecessary.
será que faz alguma diferença a ordem que vc chama esses métodos?
[code]
String encodeURL = res.encodeURL( req.getContextPath() + “/CalculaNumero.java”);
HttpSession session = req.getSession();[/code]
vc ja tentou primeiro criar a sessão e depois chamar o encodeURL?
[]´s
Boa idéia, isso eu nao tentei mesmo… vai ver é isso!!
Vou tentar, qualquer coisa eu posto aki…
Valew… :lol:
Perfeito, fucionoou legal, foi a única coisa que eu ainda não tinha tentado…
Valew, te devo essa…
Abração…