2
respostas

Acessando atributos da sessão

No capítulo 12 do curso de JSF 1, o professor usou o seguinte código para exibir no browser o email do usuário :

#{sessionScope['usuarioLogado'].email}

Porém no capítulo 13, parar definir uma condição para renderizar ou não o commandLink de logout foi utilizado isso:

<h:form rendered="#{usuarioLogado != null}">

Minha dúvida é, qual a diferença? Porque no segundo exemplo não foi utilizado a estrutura #{sessionScope['usuarioLogado']} ?

2 respostas

Rubens boa tarde,

Assim, nossa classe passa os valores de algum forma para as páginas correto? Então foi passado diretamente o usuarioLogado pela request, assim podemos pega-lo diretamente na página. Onde usuarioLogado é um objeto!

Agora no primeiro exemplo, o objeto usarioLogado foi guardado na sessão, entao dentro da sessão temos o usuarioLogado(objeto) e podemos acessar seus atributos, como email.

Espero ter ajudado!

Sim, isso eu consegui compreender, as duas utilizam um objeto da sessão, acessam o objeto da sessão, porém uma acessa o objeto em si, e outro acessa os atributos desse objeto. O que não consegui compreender é : porque a sintaxe é diferente? Eu não poderia simplesmente fazer #{usuarioLogado.email} ao invés de #{sessionScope['usuarioLogado'].email} ?