Hey

A little expansion on last reply.

Chip Wilson wrote:
> 3) Let's say that I update two entity beans with BMP within the same
> transaction.  I commit the transaction, and the container calls ejbStore on
> the first bean.  This succeeds, and the container calls ejbStore on the
> second bean.  During this call, the underlying persistent store rejects the
> update.  Now, it would seem that there is no way to rollback the
> transaction.  If the container calls ejbLoad on the first bean, it will load
> the data it just stored.

The reason deterministic transactions will work is that the EJB server
is not allowed to store(or passivate) the bean during a transaction, so
all changes will be in main memory until commit time. This is one of the
pros of modeling a database table as an entity bean instead of using
direct access using session beans: you'll be able to have
semi-transactions without too much trouble. The same application using
plain JDBC would have to do the rollbacks manually and in the database
instead which is way more complicated and a "great" source for bugs.

/Rickard

--
Rickard �berg

Computer Science student@LiTH
@home: +46 13 177937
Email: [EMAIL PROTECTED]
Homepage: http://www-und.ida.liu.se/~ricob684

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to