Dados ManagedBean de Sessão

7 respostas
M

Pessoal estou com uma dúvida: Como faço para pegar os dados de um managed bean de sessão em outro managed bean?

Por exemplo: Na minha aplicação eu necessito guardar os dados do cara que logou. Eu estou guardando estes dados no ManagedBean LoginBean. Como faço para acessar esse bean de sessão em outro managed bean?

OBS: Se necessitarem que eu coloque os managed beans envolvidos é só falar.

Desde já agradeço a todos.

7 Respostas

F

faz tempo q eu não mecho com isso

mas se eu não me engano …

vc pode pegar a sua sessão atual dentro do seu managed bean e apartir dela vc pode pegar o seu bean de login e instanciar a classe dele…

tipo

LoginBean login = sessao.getAttribute('LoginBean');

agora eu só não me lembro como pega a sessão…

mauricioadl

Nao sei se eh a melhor forma, mas eu uso assim:

FacesContext c = FacesContext.getCurrentInstance();
		ELResolver r = c.getApplication().getELResolver();
		ContatoController cc = (ContatoController) r.getValue(c.getELContext(), null, "contatoController");

ContatoController eh o meu ManagedBean de sessão

[]'s

Hebert_Coelho
Além da solução acima do colega, você pode colocar um ManagedProperty conforme abaixo:
@ManagedProperty(value = "#{userMB}")
	private UserMB userMB;

	public void setUserMB(UserMB userMB) {
		this.userMB = userMB;
	}
OBS.: Tem que ter os dois código, a anotação e o set. ^^
mauricioadl

jakefrog. fazendo dessa forma que vc passou, ele injeta o MB na classe?

Hebert_Coelho

mauricioadl:
jakefrog. fazendo dessa forma que vc passou, ele injeta o MB na classe?
yup! ^^
Legal né? Descobri a pouco tempo e comecei a usar no meu TCC. [=

M

jakefrog eu não teria q setar a propriedade? Se sim, aonde eu setaria?

OBS: Fiz aqui do jeito lá de cima. Adicionei os campo e tudo, mas ainda não ta funcionado. O campo está indo para o MySQL e ficando como BLOB.

Hebert_Coelho

Macksuel:
jakefrog eu não teria q setar a propriedade? Se sim, aonde eu setaria?

OBS: Fiz aqui do jeito lá de cima. Adicionei os campo e tudo, mas ainda não ta funcionado. O campo está indo para o MySQL e ficando como BLOB.

Hein?! Campo indo para MySQL? Você tomou NullPointer no MB que você injetou? Se não tomou funcionou uai! :stuck_out_tongue:

Oq tem haver esse negócio de blob rapaz? :stuck_out_tongue:

Criado 12 de abril de 2012
Ultima resposta 13 de abr. de 2012
Respostas 7
Participantes 4