See more about ATG Tx management @ http://tips4ufromsony.blogspot.com/2012/05/atg-how-to-use-transaction-manager.html
Most of the ATG Commerce form handlers extend atg.commerce.order.purchase.PurchaseProcessFormHandler. The transaction management pattern in order flow is implemented through this form handler’s beforeSet, afterSet, and handler methods.
The transaction will be started @ beforeSet method and is ended @ afterSet method.
In general, the design pattern for updating an order is as follows:
Find below the screen shot of ATG doc with this details :
Find more info @ http://docs.oracle.com/cd/E23507_01/Platform.20073/ATGCommProgGuide/html/s0907preparingacomplexorderforcheckou01.html
Most of the ATG Commerce form handlers extend atg.commerce.order.purchase.PurchaseProcessFormHandler. The transaction management pattern in order flow is implemented through this form handler’s beforeSet, afterSet, and handler methods.
The transaction will be started @ beforeSet method and is ended @ afterSet method.
In general, the design pattern for updating an order is as follows:
- Acquire lock-manager write lock on profile id from the /atg/commerce/order/LocalLockManager
- Begin Transaction
- Synchronize on the Order object.
- Modify Order
- Call ((OrderImpl) pOrder).updateVersion(); --> atg.commerce.order.InvalidVersionException is thrown based on this
- Call OrderManager.updateOrder()
- Release Order synchronization
- End Transaction
- Release lock-manager write lock on profile id from the /atg/commerce/order/LocalLockManager
Find below the screen shot of ATG doc with this details :
Find more info @ http://docs.oracle.com/cd/E23507_01/Platform.20073/ATGCommProgGuide/html/s0907preparingacomplexorderforcheckou01.html
Comments
Post a Comment