Duvida sobre variavel na SESSION

Colegas, estou colocando a seguinte variavel na session (ela é do tipo int) :

				request.getSession().setAttribute("registro", request.getParameter("registro"));

Quando preciso pegá-la na Session :

				cidade.setRegistro(Integer.parseInt((String) request.getSession().getAttribute("registro")));

O console dá o seguinte erro :


java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String

Tentei retirar o Cast (String) mas o Eclipse reclama.

Sabem o que pode estar acontecendo ?

vimieiro

Opa …

Faça assim fica melhor de enxergar

HttpSession session = request.getSession();

String reg = request.getParameter("registro");
session.setAttribute("registro", reg);

O metodo setRegistro recebe como parametro um integer ???

String captura = (String)session.getAttribute("registro");
cidade.setRegistro(Integer.parseInt(captura));

Agora manda imprimir o valor request.getParameter(“registro”); e veja o que traz… se trouxe “xyz” jamais isto se tornará um int …!!

vlw

Deu o mesmo erro :cry: :cry: :cry:

				cidade.setId(Integer.parseInt(request.getParameter("id")));
				reg = Integer.parseInt(request.getParameter("registro"));
				session.setAttribute("registro",reg);

Quando vou pegar lá na Session dá o erro

				String captura = (String)session.getAttribute("registro");
				cidade.setRegistro(Integer.parseInt(captura));
				request.setAttribute("cidade",bco.le(cidade,acao));
				reg = cidade.getRegistro();
				session.setAttribute("registro", reg);

É o seguinte : a variável registro vem lá do JSP e é um Int

Aparentemente ele tá jogando certo lá pra Session.

Vimieiro

Vimieiro,

Porque vc está recuperando os dados em uma variável temporária do tipo String
se vc vai precisar utilizar ela como um inteiro?

O Valor do reg não é um inteiro?

Ufa !!! Consegui fazer muito obrigado gente !!!

vimieiro :lol: