geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: Integrating a third-party JTA
Date Mon, 22 Oct 2007 22:21:39 GMT

On Oct 22, 2007, at 1:45 PM, Guy Pardon wrote:

> Hi,
>
> Thanks. Where can I see samples of this (how is it done now)? I  
> couldn't find the right module so far... Or is it in a jar somewhere?

Our J2CA and JTA implementation is in https://svn.apache.org/repos/ 
asf/geronimo/components/txmanager/trunk.  You can see how we handle  
the J2CA transaction import using XATerminator and XAWork  
interfaces.  Also notice that in order to make transaction recovery  
work without necessarily all previously existing RMs starting up  
again we've named the RMs with NamedXAResource.  The idea is that  
when the tm starts up again it reads the log to find all the in- 
flight txs and as each RM starts up it registers with the TM and the  
outstanding in-flight txs in that RM are either rolled back or  
committed based on what's in the log.  In order to clear out txs  
where some or all RMs are actually committed before the tm logs  
"complete" we compare the names of the RM with the names stored with  
the xids in the log.

In the geronimo modules/geronimo-transaction module we have gbeans  
that start the actual TM components at runtime.  You will at least  
need to write some gbean wrappers for the Atomikos TM.  You'll  
probably want to write a replacement configs/transaction module to  
use instead of the standard one.  Then you can map uses of our tm  
module to yours with an entry in var/config/artifact_aliases.properties.


Hope this helps
david jencks

>
> Guy
>
> On 22-okt-07, at 22:08, Dain Sundstrom wrote:
>
>> Other then code that attempts to cast the transaction manger to  
>> GeronimoTransactionManager (or other Geronimo transaction  
>> interfaces) it shouldn't be that difficult.  The biggest issue  
>> will be if you want to use the Geronimo connector implementation,  
>> then you will have to figure out how to adapt the JTA  
>> implementation to the  
>> org.apache.geronimo.transaction.manager.XAWork interface.  The  
>> second biggest issue, will be convincing G to correctly build the  
>> JTA implementation which will require a GBean wrapper of some kind.
>>
>> -dain
>>
>> On Oct 22, 2007, at 2:29 AM, Guy Pardon wrote:
>>
>>> Hi,
>>>
>>> Does anybody have any useful pointers on how to integrate a third- 
>>> party JTA (Atomikos) into Geronimo?
>>>
>>> Thanks,
>>> Guy
>>
>>
>


Mime
View raw message