Posted by
David E. Jones on
URL: http://ofbiz.116.s1.nabble.com/Dev-Replacing-JOTM-and-Carol-tp167754p167763.html
Jacopo, and others,
Okay... with SVN rev 7464 the GeronimoTransactionFactory now seems to be functional. Thanks for your help looking things up Jacopo. I looked into Jencks a bit more and it looks like there are some people (like David Jencks) working on both Jencks and Geronimo, and it may be that the things we are now using from the Jencks project could eventually be part of Geronimo itself, making embedded use easier. For now, we have the Jencks jar. That may be another reason why these classes are in the org.apache.geronimo package, they would like them to go over there eventually...
Anyway, we could now use some help testing this!
To enable it (it's not enabled by default yet), just uncomment line 35 in entityengine.xml:
<!-- <transaction-factory class="org.ofbiz.geronimo.GeronimoTransactionFactory"/> -->
and comment out lines 39-42 that have the current JNDI tx factory setup.
Note that this is still using Minerva for the JDBC XA-aware connection pool. It looks like Jencks might have some things to help us there as well, but my time is up for the day on this stuff.
BTW: it looks like the entity engine JUnit tests all pass, so we're good to go with that anyway... It's great to have regression tests. ;) Thanks to Si and everyone who helped on those.
-David
Jacopo Cappellato wrote:
> David,
>
> thanks for pushing this work forward!
> I did some research about the GeronimoTransactionManager class and I've
> discovered that it is one of three classes implemented in the Jencks
> project to extend the Geronimo transaction manager; here is the link to
> the source code in CVS:
>
>
http://cvs.jencks.codehaus.org/jencks/src/main/java/org/apache/geronimo/transaction/context/GeronimoTransactionManager.java?view=markup>
> I really don't know why they implemented it in the
> org.apache.geronimo.transaction.context package instead of in the
> org.jencks... package, however the source code are in the jencks
> distribution.
>
> Hope this helps... I'd love to help you more than this, but I'm still a
> bit confused by the transaction manager framework, sorry!
>
> Jacopo
>
>
> David E Jones wrote:
>> I started looking into this and put some basic stuff in place, but with no real success. The example from Jencks was interesting but used a class called GeronimoTransactionManager that must have been from some pre-1.0 release as it does not exist in 1.0 or in the current Geronimo SVN code base.
>>
>> I randomly tried some objects found looking directly at the Geronimo JavaDocs, but with no success. In a cursory review I also could not find anything along these lines in the Geronimo docs.
>>
>> The infrastructure I played with is in SVN. Just change the transaction-factory tag at the beginning of the entityengine.xml file to use the now commented out geronimo one. Changes can go in the GeronimoTransactionFactory class, which is direct for now rather than using JNDI. I figure we can worry about that later and the direct model in the Entity Engine is easier for now.
>>
>> If anyone has any ideas or resources related to this that would be great...
>>
>> Note that none of this attempts to replace Minerva (XA aware connection pool) yet, just starting with the transaction manager for now. Of course, if anyone has any ideas about that part of Geronimo it would also be appreciated.
>>
>> Note also that this is an attempt to use the embedded approach to have certain parts of Geronimo running in OFBiz rather than deploying OFBiz in Geronimo (which isn't trivial with 1.0, but may be easier with later Geronimo releases).
>>
>> -David
>>
>
>
> _______________________________________________
> Dev mailing list
>
[hidden email]
>
http://lists.ofbiz.org/mailman/listinfo/dev
_______________________________________________
Dev mailing list
[hidden email]
http://lists.ofbiz.org/mailman/listinfo/dev