Página 3 de 3

Re: begin-end transaction (BD) no Next

MensagemEnviado: Sáb Nov 26, 2011 9:22 pm
por rogelgarcia
Em cada objeto SaveOrUpdateManaged chame o flush()... coloque o código da sua aplicação aqui que eu dou um exemplo.

Repare no console e veja quais queries estao sendo executadas..

Re: begin-end transaction (BD) no Next

MensagemEnviado: Sáb Nov 26, 2011 10:24 pm
por jtakata
Coloquei o flush na gravação nos DAOs
Agora está funcionando tudo belezinha, inclusive o rollback no erro que eu forcei.
Muito obrigado e abraços,

Re: begin-end transaction (BD) no Next

MensagemEnviado: Seg Nov 28, 2011 5:53 pm
por rogelgarcia
Beleza então.. sempre que der esse tipo de situação... coloque um flush no SaveOrUpdate. O flush força o hibernate a executar os comandos...

O hibernate tenta ser esperto em relação a execução de queries o que as vezes não dá certo. Em alguns momentos estratégios o SaveOrUpdateManaged dá uns flushs automaticamente, mas não é possível prever todo o momento que será necessário. Então em cenários onde existam várias queries o flush manual pode ser necessário.