[Resolvido] Atribuindo Objeto ao Session em JSTL

Bons dias

  Uma session feita em JSTL não recebe objeto como atributo? 

Por exemplo, criei uma session do meu javabeans Usuario - que possui metodo getNome() - assim:

<c:set var="auth" value="${beanUser}" scope="session" />

onde ‘beanUser’ é o ID do meu javabean. Então leio a session…

<c:out value="${sessionScope.auth}" />

Até aí belê! Me exibe o endereço de memória do Bean… então fui além… pedi pra exibir o nome da variavel q tem no meu bean Usuario…

<c:out value="${sessionScope.auth.nome}" />

Pronto… salci fufu! Não rodou! Olha o erro

Unable to find a value for "nome" in object of class "java.lang.String" .... 

Logo, JSTL não grava session com objeto e não consigo recuperar minhas variáveis do objeto???

Somebody help me!

Quando você fez somente

 <c:out value="${sessionScope.auth}" />  

O que, exatamente, apareceu na tela?

Fiz um teste igualzinho ao seu aqui, como uma classe “Profissao” que tenho e funcionou perfeitamente.

PS: Para exibir o valor não é obrigatório usar JSTL, poderia fazer ${sessionScope.auth.nome} ou até mesmo ${auth.nome} direto no JSP.

Quando faço

<c:out value="${sessionScope.auth}" />  

me exibe o endereço do bean, assim: bean.User@151fe8a

Sei que não é obrigatório usar JSTL para exibir, mas dos dois modos não rolou.

e então? =/

Coloca um breakpoint e “debuga” como está vindo esse teu “auth” da sessão.

Se isso não rola, use um scriptlet pra ver se o “auth” tá vindo certinho.

Existe o método “getNome()” na classe de “auth”, não é?

Após o debug que fiz, verifiquei que as variáveis estavam setadas normalmente… aí rodei o programa dnovo ( SEM ALTERAR NADA!! )
e funcionou. ¬¬ Fiquei 2 horas tentando resolver isso e a explicação me vem assim… simplesmente funciona do NADA!

Valeu a atenção -_-’’