Like container-managed persistence contexts, application-managed persistence contexts may be synchronized with JTA transactions. Synchronizing the persistence context with the transaction means that a flush will occur if the transaction commits, but the persistence context will not be considered associated by any container-managed entity managers. There is no limit to the number of application-managed persistence contexts that may be synchronized with a transaction, but only one container-managed persistence context will ever be associated. This is one of the most important differences between application-managed and container-managed entity managers. An application-managed entity manager participates in a JTA transaction in one of two ways. If the persistence context is created inside the transaction, then the persistence provider will automatically synchronize the persistence context with the transaction. If the persistence context was created earlier (outside of a transaction or in a transaction that has since ended), the persistence context may be manually synchronized with the transaction by calling joinTransaction() on the EntityManager interface. Once synchronized, the persistence context will automatically be flushed when the transaction commits.

[ September 27, 2008: Message edited by: Satya Maheshwari ]

Thanks and Regards

Juggy Obhi

Ranch Hand

Posts: 51

posted 8 years ago

I haven't worked hard on persistance part of the EJB. I will go through it again. All i could understand from this is that It is possible

It does not matter how many times you fall,what matters is how many times you stand back.

Juggy Obhi

Ranch Hand

Posts: 51

posted 8 years ago

Hi Satya,

After your quote i gave a thorough study to the EJB Persistence Spec. Now each and every statement you mentioned is crystal clear to me.

Thanks

It does not matter how many times you fall,what matters is how many times you stand back.