to com uma duvida cruel que ta ferrando meu sistema..
tipo, ao atualizar o objeto Pessoa, quando eu recupero-a logo em seguida, parece que nao esta atualizada..
para atualizar eu tenho que deslogar do sistema e logar novamente para ver as alteraçoes feitas..
alguem sabe como posso controlar isso?
aqui ta a minha classe que fica a mesma durante a sessao.. tem como dar um refresh, por exemplo, no getNome() ?
Em princípio, o que me ocorre é perguntar se você está atualizando o seu “logado” quando você atualiza o nome.
Ou seja, creio que você deva ter um método “setUsuario( usuario )”, no seu “UsuarioWeb”. Então, quando você atualizar os dados do seu usuário em qualquer lugar deveria também atualizar o “logado”. Algo como:
Usuario usuario = usuarioDAO.getUsuario();
usuario.setNome( "tefo" );
usuarioWEB.setUsuario( usuario ); // Talvez falte uma linha como essa
Assim ele também atualiza o “logado” e quando você pegar o “logado” em qualquer outra parte ele estará atualizado. Caso contrário, ele só vai atualizar quando for chamado pela primeira vez ou quando a página for recarregada.
Talvez seja isso.
Abraço,
Almir.
Rafael_Guerreiro
é só vc receber no construtor o UserWeb e tocar o usuário com o que foi feito no banco.
tefo
Obrigado pela ajuda Almir e Rafael…
eu atualizei o logado da classe UsuarioWeb apos atualizar o objeto Pessoa… e ai ta blz…
soh que ta acontecendo uma coisa estranha…
quando eu carrego do banco uma pessoa, ela tem um List de atributos que no banco tem dados e quando eu recupero esta vazia: []
alguem sabe pq acontece isso?
Lucas_Cavalcanti
vc faz um pessoa.getAtributos() e não funciona, mesmo esses atributos sendo salvos no banco?
Rafael_Guerreiro
Acho que é o Lazy do Hibernate.
Depois que vc carregar um usuário, faz um
Se depois disso ela estiver populada, ve se não vale a pena configurar a sua classe para que o Hibernate faça essa chamada para você.
tefo
os atributos sumiam quando eu atualizava uma pessoa…
agora antes de atualizar uma pessoa eu obtenho os que exitem no banco e atribuo-os para a pessoa que serah atualizada, isso funcionou…
eu achava estranho porque os atributos continuavam na tabela no banco, mesmo testando com o Hibernate.initialize nao acontecia nada… entao verifiquei a tabela de ligaçao entre a pessoa e os atributos e vi que apenas essa tabela perdeu os dados…
obrigado pela força pessoal!!
desculpem o incomodo
almircampos
tefo:
os atributos sumiam quando eu atualizava uma pessoa…
agora antes de atualizar uma pessoa eu obtenho os que exitem no banco e atribuo-os para a pessoa que serah atualizada, isso funcionou…
eu achava estranho porque os atributos continuavam na tabela no banco, mesmo testando com o Hibernate.initialize nao acontecia nada… entao verifiquei a tabela de ligaçao entre a pessoa e os atributos e vi que apenas essa tabela perdeu os dados…
obrigado pela força pessoal!!
desculpem o incomodo
Não há incômodo, tefo. Todos nós aprendemos com as questões aqui colocadas. Continue postando!
Sds,
Almir.
tefo
Obrigado pela força Almir.
Unidos venceremos!! :lol:
N
noahxey
Boa noite galera,
Sei que esse post já e antigo mas estou precisando muito!! estou com esse mesmo problema e sou novato na programação já tentei de varias formas mais não deu certo alguém poderia me mostrar como faço para atualizar os dados do usuário logado se ter a necessidade de fazer logout no sistema?
Lucas_Cavalcanti
se você tem uma classe @SessionScoped, é só recebê-la no construtor e chamar métodos que modificam ela.
N
noahxey
Lucas Cavalcanti:
se você tem uma classe @SessionScoped, é só recebê-la no construtor e chamar métodos que modificam ela.