You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by David Jencks <da...@yahoo.com> on 2004/11/07 21:54:12 UTC
Is transaction control leaking around the TransactionContextManager?
The TransactionContextManager has a getTransactionManager method that
returns the underlying TransactionManager. This is used only by
EJBModuleImpl to give the tmDelegate. I haven't looked but I think
this is used by tranql/cmp.
This seems wrong to me. I think it could result in the transaction
context being out of synch with the underlying transaction.
Should the ejb module just be using the TransactionContextManager?
Should the TransactionContextManager expose the TransactionManager
interface, and have it work only with ContainerTransactionContext?
Is the reference needed at all? Is it possible to arrange that all
tx-related info is supplied directly in any calls into tranql?
Have I missed something?
thanks
david jencks
Re: Is transaction control leaking around the TransactionContextManager?
Posted by Jeremy Boynes <jb...@gluecode.com>.
TranQL uses TM directly to avoid any dependency on Geronimo.
IIRC the only place it is used is to support collection-valued accessors
for EJBs - the spec requires that at the end of the transaction any
returned Collections become inoperative. Have look at MultiValuedCMRAccessor
Alternatively you might contemplate moving the EJB code from TranQL into
OpenEJB which would allow closer coupling.
--
Jeremy
David Jencks wrote:
> The TransactionContextManager has a getTransactionManager method that
> returns the underlying TransactionManager. This is used only by
> EJBModuleImpl to give the tmDelegate. I haven't looked but I think this
> is used by tranql/cmp.
>
> This seems wrong to me. I think it could result in the transaction
> context being out of synch with the underlying transaction.
>
> Should the ejb module just be using the TransactionContextManager?
>
> Should the TransactionContextManager expose the TransactionManager
> interface, and have it work only with ContainerTransactionContext?
>
> Is the reference needed at all? Is it possible to arrange that all
> tx-related info is supplied directly in any calls into tranql?
>
> Have I missed something?
>
> thanks
> david jencks