Update Hibernate

Boa tarde.

Estou tentando fazer um update do meu objeto a partir do hibernate.

Antes, busco o meu objeto no banco de dados e seto o novo valor para o campo “status”:

Transaction tx = session.beginTransaction();
Query q = session.createQuery ("from CadForne as forne where forne.codforne = "+codForne);
CadForne cadForne = (CadForne) q.uniqueResult();
cadForne.setStatus(9);

Após, faço o update:

session.saveOrUpdate(cadForne);
session.getTransaction().commit();
 session.close();

Quando vai executar o comandosession.getTransaction().commit();, o netBeans simplesmente para!
Não gera nenhuma excessão nem acontece mais nada!
Esperei durante 10 minutos e não acontece nada, ou seja, o update não acontece.
Tenho que acabar por parar o programa.

Alguem tem alguma idéia do que possa ser ?

Obrigado!

Você nem precisaria fazer o session.saveOrUpdate(cadForne); caso o objeto esteja dentro da mesma transação.

  1. Você tem certeza de que está chegando no código? Você debugou e viu passar pela linha de update?

[quote=Hebert Coelho]Você nem precisaria fazer o session.saveOrUpdate(cadForne); caso o objeto esteja dentro da mesma transação.

  1. Você tem certeza de que está chegando no código? Você debugou e viu passar pela linha de update?[/quote]

Opa. Obrigado pela resposta.
Na verdade não está dentro da mesma transação.
Sim… debuguei e vi passar pela linha de código.
Vi também a query sql sendo executada no console (update).

Alguma idéia ?

Obrigado!

Descobri.

Como estou fazendo uma aplicação de teste, para conferir os dados na base de dados, eu faço select sempre com o “for update” no final, para, se precisar, eu poder deletar dados na mão e testar novamente.

Aparentemente, eu estava com a tabela “lock”, pois sempre quando eu tentava dar um update na mesma, antes eu executava o comando select … for update, para ver se a tabela havia sido updatada.

Por mais incrivel que pareça, acredito que seja isso sim.

Se alguem tiver algo a complementar, fica a vontade.

Obrigado!

Não tem nenhuma outra transação que está dando lock nessa tabela?
Alguma da aplicação ou até mesmo uma IDE que acessa o seu banco com transação aberta?

[quote=FernandoCartaxo]Não tem nenhuma outra transação que está dando lock nessa tabela?
Alguma da aplicação ou até mesmo uma IDE que acessa o seu banco com transação aberta?[/quote]

Pior que não.
Realmente era isso que eu falei no post acima, por incrivel que pareça!