Pegar valor de atributo de uma session

Bom dia amigos,

Como faço para pegar um atributo de uma session. Coloquei uma lista na session agora quero pegar o valor de um atributo desta session. Como faço?

request.getSession().setAttribute("lEstado", estados);

Vlw…

Estado estado=(Estado)session.getAtribute("lEstado");
1 curtida

Não funfou amigo. Tentei da seguinte forma:

HttpSession session = request.getSession();
EstadoVO estado =(EstadoVO)session.getAttribute("lEstado");
System.out.println("Estado: " + estado.getId());

No caso, eu so quero pegar o id do estado desta session.

Mas está dando esse error:

javax.servlet.ServletException: java.util.ArrayList cannot be cast to br.com.sce.business.vo.estado.EstadoVO
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause 

java.lang.ClassCastException: java.util.ArrayList cannot be cast to br.com.sce.business.vo.estado.EstadoVO
	br.com.sce.controller.action.fornecedor.FornecedorAction.incluirFornecedor(FornecedorAction.java:163)
	sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	java.lang.reflect.Method.invoke(Unknown Source)
	org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269)
	org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:170)
	org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
	org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
	org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
	org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
	org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
	org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
	org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
	org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

Opa.

Tche, viu o erro?
O objeto de sessao que tu pegando é uma list e tu ta fazendo um cast de um objeto.
Tenta:

List estado = session.getAttribute(“lEstado”);

:slight_smile:

abraço

Tive que fazer o seguinte:

List <EstadoVO> estado = (List<EstadoVO>) session.getAttribute("lEstado"); 

Mas como faço para pegar um valor de um atributo que esta nesta session?

Quero pegar o id do estado que coloquei neste session…

Vlw…

Olá

Você tem que percorrer esse List

List <EstadoVO> estado = (List<EstadoVO>) session.getAttribute("lEstado"); for(EstadoVO uf : estado){ System.out.println(uf.getId()); }