Hello,
I'm having problem with the Automatic JTA and Session binding in Hibernate 3 and the optimistic lock strategy.
If I update a row the version number get's incremented only after the transaction commits. The commit occurs on transaction completion, that is after the EJB returns. As we use the DTO patterns, the value of the version attribute is copied before the transaction commits thus we have an old value. The next time we want to update Hibernate throws an org.hibernate.StaleObjectStateException.
I use the following configuration options:
hibernate.transaction.auto_close_session=true
hibernate.transaction.flush_before_completion=true
Any ideas how to handle the problem other than loading the Object for a second time in the web tier?
thx
Rene
Hibernate version: 3.0.4
|