Dúvida no Hibernate

Pessoal,

Gostaria de saber como podemos fazer para passar uma transação de hibernate de um session bean para outro, por exemplo, quando um componente de negócio chama outro. Gostaria que todas as ações estejam submetidas a mesma transação.

Alguém já teve alguma experiência com isso

abraços

A transação é aberta por sessão do hibernate usando a classe net.sf.hibernate.Session
Você tem que inicializar a transação

net.sf.hibernate.Transaction transaction = session.beginTransaction();

E para cada ação que você vai executar no banco, dentro da mesma transação, você tem que usar a mesma session, então você deve passar a session para todas as DAOs envolvidas.
E no final…

transaction.commit();

ou

transaction.rollback();