Hm, I suppose that synchronizationObserver is an instance of javax.transaction.Synchronization? Well, this problem seems to be beyond the scope of CDI/Weld. I'd rather say it's a question for some JTA experts. The only relevant sentences I found in the JTA spec are:
"The Synchronization.afterCompletion method is called after the transaction has completed. The status of the transaction is supplied in the parameter."
and
"Any Synchronization.afterCompletion methods will be invoked in an undefined context."
|