Eu carrego uma entidade do banco com hibernate e exibo em um formulalrio JSF.
porém quando eu envio o formulario ele persiste a minha modificação.
Sendo que eu quero desabilitar esta funcionalidade.
Estava pesquisando na net e vi sobre open session in view, creio que seja isto.
Estou utilizando spring para levantar o hibernate.
Alguém sabe como posso fazer para desabilitar isto?
Diego, este padrão não grava as informações no banco é a maneira que você está utilizando que esta fazendo gravar.
Este padrão deixa a sessão do Jpa/hibernate… aberta para que a tua aplicação possa realizar consultas Feth.LAZY enquanto a view é renderizada da sua aplicação.
Se vc mandar um formulario que esta carregando uma entidade e no servidor vc usar o salvar do jpa/hibern… realmente vai atualizar as informações, mesmo sem o OpenSessionInView, ou intão vc configuro o jpa/hibernate para ficar com escopo de aplicação ou sessão neste caso deveria estar como request…
Diego.G.A
Valeu, assim que eu fizer os teste coloco aqui o resultado.
E como vc esta usando na sua tela ? e como esta o seu backbean ?
Lembrando que c vc ñ quizer salvar vc tem que tratar no seu backbean…
Diego.G.A
Eu não configurei hibernate.current_session_context_class
e como como estou utlizando na tela?
Priuli
*tava sem net… (por isso da demora)
se ñ tiver configurado, o escopo deve estar como sessão!
Diego.G.A
Eu descobri o que era,
Seguinte,
Quando eu carregava os dados, eu atribuia uma string vazia ao meu elemento,
sendo que , ao submeter o formulario, ele chamava automaticamente o método novamente ai o método de carregar seta a string vazia no bean e o ele acaba sendo persistido.
eu só tirei isso!
mas o porque acontecia isso eu não sei.
mudei o flushmode pra commit e nã oresolveu, depois coloquei em manual,
só que tirei depois pq não queria assim.