Re: Spring support in Geronimo
Maybe I 'm still miss some point, but I think that's what do the org.apache.geronimo.transaction.context.GeronimoTransactionManager [1] of the jencks project. I was in need for it in ServiceMix, because when using xa transactions, the JBI container has to suspend / resume transactions. This is due to the fact the JBI components pull messages from a queue in their own threads, but the transaction is conveyed on the JBI message exchange. Therefore, ServiceMix suspends the current transaction when the message is queued, and resume it when it is dequeued (in another thread). The problem is that the only standard way to suspend / resume transactions is to use the TransactionManager, but the geronimo implementation does not work well when working on UserTransaction : all resources enlisted in the user transaction are managed by the TransactionContextManager and if you call the TransactionManager directly, the TransactionContextManager is bypassed. The GeronimoTransactionManager (in jencks project) wraps the TransactionContextManager and implements both UserTransaction and TransactionManager. In addition, it allows the use of unmanaged threads by creating an empty context for the thread where the transaction is started / resumed, if none exists already. This implementation can easily be used by the existing spring JtaTransactionManager. The gbeans written for ServiceMix do use this implementation. Cheers, Guillaume Nodet [1] http://cvs.codehaus.org/viewrep/jencks/jencks/src/main/java/org/apache/geronimo/transaction/context David Jencks wrote: This looks like it should work. I think there is some chance that it would work even better if we provided a transaction manager that wraps our transactioncontextmanager, but it's too early in the morning for me to think straight about it. If you get into problem with connections not being returned to the pool let me know and I will think about it harder. How do you provide access to the jdbc connection? By declaring a resource-ref in the j2ee component that is calling hibernate, or some other way? thanks david jencks On Feb 3, 2006, at 12:42 AM, Jason Dillon wrote: It looks like you can be the first to test out my new SpringTransactionManager :-). It wraps our TransactionContextManager in a PlatformTransactionManager subclass. You need to give it 2 constructor args, the kernel name and the tcm object name. The normal values are in the comments in the class. Aight... kick it down yo. What does Hibernate need? Can it work off a spring tm or does it need something else? I think it wants a special lookup class... I wrote one up tonight based on comments to the dev list a while ago... creating a proxy to the TransactionManager instance. I have yet to test it though. If you can come up with some kind of spring app that ought to work and uses the spring tm I would be able to test and perhaps debug my code :-) I might be able to come up with something simple... though right now first priority is to just get something... anything working inside of Geronimo so our SE dept. can test it. Anyways, looks like spring needs a Geronimo version like: http://www.springframework.org/docs/api/org/springframework/ transaction/jta/WebSphereTransactionManagerFactoryBean.html I've yet to look at what this puppy does. And Hibernate needs a Geronimo version of: http://cvs.sourceforge.net/viewcvs.py/hibernate/Hibernate3/src/org/ hibernate/transaction/JOTMTransactionManagerLookup.java? rev=1.1view=auto This is what I wrote and will be testing out tomorrow. snip package com.solidusnetworks.utils.geronimo; import java.util.Properties; import javax.transaction.TransactionManager; import javax.management.ObjectName; import net.sf.hibernate.HibernateException; import net.sf.hibernate.transaction.TransactionManagerLookup; import org.apache.geronimo.kernel.Kernel; import org.apache.geronimo.kernel.KernelRegistry; /** * Provides lookup of the Geronimo (1.0) transaction manager. * * @version $Id$ $Date$ * @author a href=mailto:[EMAIL PROTECTED]Jason Dillon/a */ public class GeronimoTransactionManagerLookup implements TransactionManagerLookup { public static final String TXM_GBEAN_NAME = geronimo.server:J2EEApplication=null,J2EEModule=geronimo/j2ee- server/1.0/ car,J2EEServer=geronimo,j2eeType=TransactionManager,name=TransactionMa nager; public static final String USER_TXN_NAME = java:comp/ UserTransaction; public TransactionManager getTransactionManager(final Properties props) throws HibernateException { try { // // FIXME: This is probably not work when Geronimo versions change... :-( // ObjectName TM_NAME = new ObjectName(TXM_GBEAN_NAME); Kernel kernel = KernelRegistry.getSingleKernel(); return (TransactionManager) kernel.getProxyManager ().createProxy(TM_NAME, TransactionManager.class);
Re: Spring support in Geronimo
FYI so far so good with your spring txm bridge. Though I did see some strange spring errors when passing the gbean name in as a constructor-arg... But for testing I created a subclass to set those params for now. Still can't tell how well the hibernate lookup works, hopefully I can get to that today. BTW why do you think the contextual txm would work better? --jason -Original Message- From: David Jencks [EMAIL PROTECTED] Date: Fri, 3 Feb 2006 19:43:17 To:dev@geronimo.apache.org Subject: Re: Spring support in Geronimo On Feb 3, 2006, at 5:37 PM, Jason Dillon wrote: On 2/3/06, David Jencks [EMAIL PROTECTED] wrote: I don't think you'll be able to see anything in a jndi viewer since we don't have a global jndi context :-( Have you tried using my SpringTransactionManager instead of spring's JtaTransactionManager? Where is your mythical SpringTransactionManager? modules/spring Is your ejb clearly labelled for BMT? If so, the UT should be there if you are accessing spring from the ejb in the same thread as the ejb call and spring is not changing any of the initial context system properties. Um... for the record its not really my bean... I was just given this app that runs on WAS5 and asked to make it run on Geronimo. And, it looks like they are all Container managed (transaction-typeContainer/transaction-type is everywhere). yikes, you are not supposed to be able to get UT in a CMT ejb. Your app should not work on any j2ee compliant app server :-) thanks david jencks * * * What Spring and Hibernate need is a way to get a handle on the containers TXM. I had just tried using the org.springframework.transaction.jta.JtaTransactionManager. But did not get very far with testing this stuff out because every 10 minutes someone comes by and bugs me for something... :-( --jason
Re: Spring support in Geronimo
On Feb 2, 2006, at 7:17 PM, Rajith Attapattu wrote:Hi David, Thanks for the info, I myself not too familliar with Spring :-) I asked the question out of curiosity. Btw why did u integrate the spring tm? (like any special features that it provides) Is it better than the default Geronimo transaction manager? (I have heard that you can use spring tm standalone, may thats what u did, pls correct me if I am wrong) Actually there is no spring transaction manager implementation in the sense of actually managing transactions. Spring relies on other people for the actual jta implementation, such as the jencks project (wrapping the geronimo tm), JOTM, or the tm in a j2ee server such as WAS or WLS. What I did was just wrap ours like the WAS or WLS tm is wrapped (except since my wrapper is single purpose it is somewhat simpler).thanksdavid jencks Regards, Rajith. On 2/2/06, David Jencks [EMAIL PROTECTED] wrote: On Feb 2, 2006, at 4:42 PM, Rajith Attapattu wrote: Hi, Can somebody please clarify as to the extent of Spring support we have within Geronimo. I did read David Jencks comments on the JIRA issue, but couldn't grasp the overall context of the sping involvment within G. So I really appreciate a bit more background and more specific information on the topic.I know that it is possible to run a spring app started from a servletinit method in geronimo (namely jetspeed2).We'd like to expose our services such as the transaction management and connectors in spring. I don't know much of anything about Springso I just barged ahead and implemented a spring-tm to geronimo-tcmadapter. If anyone knows how to determine how much it works, pleasehelp out :-) There's also the jencks project which has a different purpose. Theyare not running anything in the geronimo kernel, but rather startingthe geronimo jta and j2ca components in spring. I don't think that those components will be very useful for exposing components runningin the geronimo kernel in spring, but I could be wrong.thanksdavid jencks thanks, Rajith
Re: Spring support in Geronimo
On Feb 2, 2006, at 10:00 PM, Jason Dillon wrote:On a related note...Any idea on how to integrate Geronimo's TXM with Spring+Hibernate? I played around with it a little today, but just kept running into problems :-(It looks like you can be the first to test out my new SpringTransactionManager :-). It wraps our TransactionContextManager in a PlatformTransactionManager subclass. You need to give it 2 constructor args, the kernel name and the tcm object name. The normal values are in the comments in the class.What does Hibernate need? Can it work off a spring tm or does it need something else?If you can come up with some kind of spring app that ought to work and uses the spring tm I would be able to test and perhaps debug my code :-)thanksdavid jencks--jasonOn Feb 2, 2006, at 9:45 PM, James Strachan wrote:Just a minor clarification; Spring does not have a transaction manager per se; its got declarative transaction support and various wrappers for talking to different transaction managers. The declarative transactions support in spring is cool and very useful from a POJO developers point of view.I concur with David; users of Jenck typically are not using the Geronimo kernel but are typically running in J2SE or inside a web container. So currently the use of Jencks and Spring works great but doesn't involve the Geronimo kernel. As an aside, if one day Geronimo used XBean as its kernel, that'd be a completely different matter, we'd have great Spring and Geronimo integration for free...JamesOn Friday, February 03, 2006, at 03:18AM, Rajith Attapattu [EMAIL PROTECTED] wrote: Original Attached Hi David, Thanks for the info, I myself not too familliar with Spring :-) I asked the question out of curiosity. Btw why did u integrate the spring tm? (like any special features that it provides) Is it better than the default Geronimo transaction manager? (I have heard that you can use spring tm standalone, may thats what u did, pls correct me if I am wrong) Regards, Rajith. On 2/2/06, David Jencks [EMAIL PROTECTED] wrote: On Feb 2, 2006, at 4:42 PM, Rajith Attapattu wrote: Hi, Can somebody please clarify as to the extent of Spring support we have within Geronimo. I did read David Jencks comments on the JIRA issue, but couldn't grasp the overall context of the sping involvment within G. So I really appreciate a bit more background and more specific information on the topic.I know that it is possible to run a spring app started from a servletinit method in geronimo (namely jetspeed2).We'd like to expose our services such as the transaction management and connectors in spring. I don't know much of anything about Springso I just barged ahead and implemented a spring-tm to geronimo-tcmadapter. If anyone knows how to determine how much it works, pleasehelp out :-) There's also the jencks project which has a different purpose. Theyare not running anything in the geronimo kernel, but rather startingthe geronimo jta and j2ca components in spring. I don't think that those components will be very useful for exposing components runningin the geronimo kernel in spring, but I could be wrong.thanksdavid jencks thanks, Rajith
Re: Spring support in Geronimo
It looks like you can be the first to test out my new SpringTransactionManager :-). It wraps our TransactionContextManager in a PlatformTransactionManager subclass. You need to give it 2 constructor args, the kernel name and the tcm object name. The normal values are in the comments in the class. Aight... kick it down yo. What does Hibernate need? Can it work off a spring tm or does it need something else? I think it wants a special lookup class... I wrote one up tonight based on comments to the dev list a while ago... creating a proxy to the TransactionManager instance. I have yet to test it though. If you can come up with some kind of spring app that ought to work and uses the spring tm I would be able to test and perhaps debug my code :-) I might be able to come up with something simple... though right now first priority is to just get something... anything working inside of Geronimo so our SE dept. can test it. Anyways, looks like spring needs a Geronimo version like: http://www.springframework.org/docs/api/org/springframework/ transaction/jta/WebSphereTransactionManagerFactoryBean.html I've yet to look at what this puppy does. And Hibernate needs a Geronimo version of: http://cvs.sourceforge.net/viewcvs.py/hibernate/Hibernate3/src/org/ hibernate/transaction/JOTMTransactionManagerLookup.java? rev=1.1view=auto This is what I wrote and will be testing out tomorrow. snip package com.solidusnetworks.utils.geronimo; import java.util.Properties; import javax.transaction.TransactionManager; import javax.management.ObjectName; import net.sf.hibernate.HibernateException; import net.sf.hibernate.transaction.TransactionManagerLookup; import org.apache.geronimo.kernel.Kernel; import org.apache.geronimo.kernel.KernelRegistry; /** * Provides lookup of the Geronimo (1.0) transaction manager. * * @version $Id$ $Date$ * @author a href=mailto:[EMAIL PROTECTED]Jason Dillon/a */ public class GeronimoTransactionManagerLookup implements TransactionManagerLookup { public static final String TXM_GBEAN_NAME = geronimo.server:J2EEApplication=null,J2EEModule=geronimo/j2ee-server/ 1.0/ car,J2EEServer=geronimo,j2eeType=TransactionManager,name=TransactionMana ger; public static final String USER_TXN_NAME = java:comp/ UserTransaction; public TransactionManager getTransactionManager(final Properties props) throws HibernateException { try { // // FIXME: This is probably not work when Geronimo versions change... :-( // ObjectName TM_NAME = new ObjectName(TXM_GBEAN_NAME); Kernel kernel = KernelRegistry.getSingleKernel(); return (TransactionManager) kernel.getProxyManager ().createProxy(TM_NAME, TransactionManager.class); } catch (Exception e) { throw new HibernateException(Failed to lookup Geronimo transaction manager, e); } } public String getUserTransactionName() { return USER_TXN_NAME; } } /snip --jason
Re: Spring support in Geronimo
This looks like it should work. I think there is some chance that it would work even better if we provided a transaction manager that wraps our transactioncontextmanager, but it's too early in the morning for me to think straight about it. If you get into problem with connections not being returned to the pool let me know and I will think about it harder. How do you provide access to the jdbc connection? By declaring a resource-ref in the j2ee component that is calling hibernate, or some other way? thanks david jencks On Feb 3, 2006, at 12:42 AM, Jason Dillon wrote: It looks like you can be the first to test out my new SpringTransactionManager :-). It wraps our TransactionContextManager in a PlatformTransactionManager subclass. You need to give it 2 constructor args, the kernel name and the tcm object name. The normal values are in the comments in the class. Aight... kick it down yo. What does Hibernate need? Can it work off a spring tm or does it need something else? I think it wants a special lookup class... I wrote one up tonight based on comments to the dev list a while ago... creating a proxy to the TransactionManager instance. I have yet to test it though. If you can come up with some kind of spring app that ought to work and uses the spring tm I would be able to test and perhaps debug my code :-) I might be able to come up with something simple... though right now first priority is to just get something... anything working inside of Geronimo so our SE dept. can test it. Anyways, looks like spring needs a Geronimo version like: http://www.springframework.org/docs/api/org/springframework/ transaction/jta/WebSphereTransactionManagerFactoryBean.html I've yet to look at what this puppy does. And Hibernate needs a Geronimo version of: http://cvs.sourceforge.net/viewcvs.py/hibernate/Hibernate3/src/org/ hibernate/transaction/JOTMTransactionManagerLookup.java? rev=1.1view=auto This is what I wrote and will be testing out tomorrow. snip package com.solidusnetworks.utils.geronimo; import java.util.Properties; import javax.transaction.TransactionManager; import javax.management.ObjectName; import net.sf.hibernate.HibernateException; import net.sf.hibernate.transaction.TransactionManagerLookup; import org.apache.geronimo.kernel.Kernel; import org.apache.geronimo.kernel.KernelRegistry; /** * Provides lookup of the Geronimo (1.0) transaction manager. * * @version $Id$ $Date$ * @author a href=mailto:[EMAIL PROTECTED]Jason Dillon/a */ public class GeronimoTransactionManagerLookup implements TransactionManagerLookup { public static final String TXM_GBEAN_NAME = geronimo.server:J2EEApplication=null,J2EEModule=geronimo/j2ee- server/1.0/ car,J2EEServer=geronimo,j2eeType=TransactionManager,name=TransactionMa nager; public static final String USER_TXN_NAME = java:comp/ UserTransaction; public TransactionManager getTransactionManager(final Properties props) throws HibernateException { try { // // FIXME: This is probably not work when Geronimo versions change... :-( // ObjectName TM_NAME = new ObjectName(TXM_GBEAN_NAME); Kernel kernel = KernelRegistry.getSingleKernel(); return (TransactionManager) kernel.getProxyManager ().createProxy(TM_NAME, TransactionManager.class); } catch (Exception e) { throw new HibernateException(Failed to lookup Geronimo transaction manager, e); } } public String getUserTransactionName() { return USER_TXN_NAME; } } /snip --jason
Re: Spring support in Geronimo
This looks like it should work. I think there is some chance that it would work even better if we provided a transaction manager that wraps our transactioncontextmanager, but it's too early in the morning for me to think straight about it. If you get into problem with connections not being returned to the pool let me know and I will think about it harder. Thanks David... its too early for me too (at 12:20pm :-P) How do you provide access to the jdbc connection? By declaring a resource-ref in the j2ee component that is calling hibernate, or some other way? The datasource(s) are accessed by a resource-ref, from a EAR-EJB, which then delegates to Spring which links up the application code to Hibernate DAOs. * * * I have yet yo try this out yet... its gonna be a fun friday... oh boy :-\ --jason
Re: Spring support in Geronimo
Is a JTA UserTransaction supposed to be bound as java:comp/UserTransaction, from inside a EAR/EJB context? I'm getting unhappy exceptions like: snip Caused by: org.springframework.transaction.TransactionSystemException: JTA UserTransaction is not available at JNDI location [java:comp/UserTransaction]; nested exception is javax.naming.NameNotFoundException: UserTransaction at org.springframework.transaction.jta.JtaTransactionManager.lookupUserTransaction(JtaTransactionManager.java:359) at org.springframework.transaction.jta.JtaTransactionManager.afterPropertiesSet(JtaTransactionManager.java:312) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1065) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:343) ... 65 more /snip I've been meaning to download a JNDI viewer so I can actually see what's in there. --jason
Re: Spring support in Geronimo
Only in an EJB using bean managed transactions. -dain On Feb 3, 2006, at 5:01 PM, Jason Dillon wrote: Is a JTA UserTransaction supposed to be bound as java:comp/UserTransaction, from inside a EAR/EJB context? I'm getting unhappy exceptions like: snip Caused by: org.springframework.transaction.TransactionSystemException: JTA UserTransaction is not available at JNDI location [java:comp/UserTransaction]; nested exception is javax.naming.NameNotFoundException: UserTransaction at org.springframework.transaction.jta.JtaTransactionManager.lookupUserTr ansaction(JtaTransactionManager.java:359) at org.springframework.transaction.jta.JtaTransactionManager.afterPropert iesSet(JtaTransactionManager.java:312) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanF actory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1065) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanF actory.createBean(AbstractAutowireCapableBeanFactory.java:343) ... 65 more /snip I've been meaning to download a JNDI viewer so I can actually see what's in there. --jason
Re: Spring support in Geronimo
I don't think you'll be able to see anything in a jndi viewer since we don't have a global jndi context Have you tried using my SpringTransactionManager instead of spring's JtaTransactionManager? Is your ejb clearly labelled for BMT? If so, the UT should be there if you are accessing spring from the ejb in the same thread as the ejb call and spring is not changing any of the initial context system properties. thanks david jencks On Feb 3, 2006, at 5:01 PM, Jason Dillon wrote: Is a JTA UserTransaction supposed to be bound as java:comp/UserTransaction, from inside a EAR/EJB context? I'm getting unhappy exceptions like: snip Caused by: org.springframework.transaction.TransactionSystemException: JTA UserTransaction is not available at JNDI location [java:comp/UserTransaction]; nested exception is javax.naming.NameNotFoundException: UserTransaction at org.springframework.transaction.jta.JtaTransactionManager.lookupUserTr ansaction(JtaTransactionManager.java:359) at org.springframework.transaction.jta.JtaTransactionManager.afterPropert iesSet(JtaTransactionManager.java:312) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanF actory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1065) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanF actory.createBean(AbstractAutowireCapableBeanFactory.java:343) ... 65 more /snip I've been meaning to download a JNDI viewer so I can actually see what's in there. --jason
Re: Spring support in Geronimo
On 2/3/06, David Jencks [EMAIL PROTECTED] wrote: I don't think you'll be able to see anything in a jndi viewer since we don't have a global jndi context :-( Have you tried using my SpringTransactionManager instead of spring's JtaTransactionManager? Where is your mythical SpringTransactionManager? Is your ejb clearly labelled for BMT? If so, the UT should be there if you are accessing spring from the ejb in the same thread as the ejb call and spring is not changing any of the initial context system properties. Um... for the record its not really my bean... I was just given this app that runs on WAS5 and asked to make it run on Geronimo. And, it looks like they are all Container managed (transaction-typeContainer/transaction-type is everywhere). * * * What Spring and Hibernate need is a way to get a handle on the containers TXM. I had just tried using the org.springframework.transaction.jta.JtaTransactionManager. But did not get very far with testing this stuff out because every 10 minutes someone comes by and bugs me for something... :-( --jason
Re: Spring support in Geronimo
On Feb 3, 2006, at 5:37 PM, Jason Dillon wrote: On 2/3/06, David Jencks [EMAIL PROTECTED] wrote: I don't think you'll be able to see anything in a jndi viewer since we don't have a global jndi context :-( Have you tried using my SpringTransactionManager instead of spring's JtaTransactionManager? Where is your mythical SpringTransactionManager? modules/spring Is your ejb clearly labelled for BMT? If so, the UT should be there if you are accessing spring from the ejb in the same thread as the ejb call and spring is not changing any of the initial context system properties. Um... for the record its not really my bean... I was just given this app that runs on WAS5 and asked to make it run on Geronimo. And, it looks like they are all Container managed (transaction-typeContainer/transaction-type is everywhere). yikes, you are not supposed to be able to get UT in a CMT ejb. Your app should not work on any j2ee compliant app server :-) thanks david jencks * * * What Spring and Hibernate need is a way to get a handle on the containers TXM. I had just tried using the org.springframework.transaction.jta.JtaTransactionManager. But did not get very far with testing this stuff out because every 10 minutes someone comes by and bugs me for something... :-( --jason
Re: Spring support in Geronimo
Ha... This app is so coupled to WAS5 its not funny. Using com.ibm classes all over the place :-( --jason -Original Message- From: David Jencks [EMAIL PROTECTED] Date: Fri, 3 Feb 2006 19:43:17 To:dev@geronimo.apache.org Subject: Re: Spring support in Geronimo On Feb 3, 2006, at 5:37 PM, Jason Dillon wrote: On 2/3/06, David Jencks [EMAIL PROTECTED] wrote: I don't think you'll be able to see anything in a jndi viewer since we don't have a global jndi context :-( Have you tried using my SpringTransactionManager instead of spring's JtaTransactionManager? Where is your mythical SpringTransactionManager? modules/spring Is your ejb clearly labelled for BMT? If so, the UT should be there if you are accessing spring from the ejb in the same thread as the ejb call and spring is not changing any of the initial context system properties. Um... for the record its not really my bean... I was just given this app that runs on WAS5 and asked to make it run on Geronimo. And, it looks like they are all Container managed (transaction-typeContainer/transaction-type is everywhere). yikes, you are not supposed to be able to get UT in a CMT ejb. Your app should not work on any j2ee compliant app server :-) thanks david jencks * * * What Spring and Hibernate need is a way to get a handle on the containers TXM. I had just tried using the org.springframework.transaction.jta.JtaTransactionManager. But did not get very far with testing this stuff out because every 10 minutes someone comes by and bugs me for something... :-( --jason
Re: Spring support in Geronimo
Hi, Can somebody please clarify as to the extent of Spring support we have within Geronimo. I did read David Jencks comments on the JIRA issue,but couldn't grasp the overall context of the sping involvment within G. SoI really appreciate a bit more background and more specific information on the topic. thanks, Rajith
Re: Spring support in Geronimo
On Feb 2, 2006, at 4:42 PM, Rajith Attapattu wrote: Hi, Can somebody please clarify as to the extent of Spring support we have within Geronimo. I did read David Jencks comments on the JIRA issue, but couldn't grasp the overall context of the sping involvment within G. So I really appreciate a bit more background and more specific information on the topic. I know that it is possible to run a spring app started from a servlet init method in geronimo (namely jetspeed2). We'd like to expose our services such as the transaction management and connectors in spring. I don't know much of anything about Spring so I just barged ahead and implemented a spring-tm to geronimo-tcm adapter. If anyone knows how to determine how much it works, please help out :-) There's also the jencks project which has a different purpose. They are not running anything in the geronimo kernel, but rather starting the geronimo jta and j2ca components in spring. I don't think that those components will be very useful for exposing components running in the geronimo kernel in spring, but I could be wrong. thanks david jencks thanks, Rajith
Re: Spring support in Geronimo
Hi David, Thanks for the info, I myself not too familliar with Spring :-) I asked the question out of curiosity. Btw why did u integrate the spring tm? (like any special features that it provides) Is it better than the default Geronimo transaction manager? (I have heard that you can use spring tm standalone, may thats whatu did, pls correct me if I am wrong) Regards, Rajith. On 2/2/06, David Jencks [EMAIL PROTECTED] wrote: On Feb 2, 2006, at 4:42 PM, Rajith Attapattu wrote: Hi, Can somebody please clarify as to the extent of Spring support we have within Geronimo. I did read David Jencks comments on the JIRA issue, but couldn't grasp the overall context of the sping involvment within G. So I really appreciate a bit more background and more specific information on the topic.I know that it is possible to run a spring app started from a servletinit method in geronimo (namely jetspeed2).We'd like to expose our services such as the transaction management and connectors in spring.I don't know much of anything about Springso I just barged ahead and implemented a spring-tm to geronimo-tcmadapter.If anyone knows how to determine how much it works, pleasehelp out :-) There's also the jencks project which has a different purpose.Theyare not running anything in the geronimo kernel, but rather startingthe geronimo jta and j2ca components in spring.I don't think that those components will be very useful for exposing components runningin the geronimo kernel in spring, but I could be wrong.thanksdavid jencks thanks, Rajith
Re: Spring support in Geronimo
On a related note...Any idea on how to integrate Geronimo's TXM with Spring+Hibernate? I played around with it a little today, but just kept running into problems :-(--jasonOn Feb 2, 2006, at 9:45 PM, James Strachan wrote:Just a minor clarification; Spring does not have a transaction manager per se; its got declarative transaction support and various wrappers for talking to different transaction managers. The declarative transactions support in spring is cool and very useful from a POJO developers point of view.I concur with David; users of Jenck typically are not using the Geronimo kernel but are typically running in J2SE or inside a web container. So currently the use of Jencks and Spring works great but doesn't involve the Geronimo kernel. As an aside, if one day Geronimo used XBean as its kernel, that'd be a completely different matter, we'd have great Spring and Geronimo integration for free...JamesOn Friday, February 03, 2006, at 03:18AM, Rajith Attapattu [EMAIL PROTECTED] wrote: Original Attached Hi David, Thanks for the info, I myself not too familliar with Spring :-) I asked the question out of curiosity. Btw why did u integrate the spring tm? (like any special features that it provides) Is it better than the default Geronimo transaction manager? (I have heard that you can use spring tm standalone, may thats what u did, pls correct me if I am wrong) Regards, Rajith. On 2/2/06, David Jencks [EMAIL PROTECTED] wrote: On Feb 2, 2006, at 4:42 PM, Rajith Attapattu wrote: Hi, Can somebody please clarify as to the extent of Spring support we have within Geronimo. I did read David Jencks comments on the JIRA issue, but couldn't grasp the overall context of the sping involvment within G. So I really appreciate a bit more background and more specific information on the topic.I know that it is possible to run a spring app started from a servletinit method in geronimo (namely jetspeed2).We'd like to expose our services such as the transaction management and connectors in spring. I don't know much of anything about Springso I just barged ahead and implemented a spring-tm to geronimo-tcmadapter. If anyone knows how to determine how much it works, pleasehelp out :-) There's also the jencks project which has a different purpose. Theyare not running anything in the geronimo kernel, but rather startingthe geronimo jta and j2ca components in spring. I don't think that those components will be very useful for exposing components runningin the geronimo kernel in spring, but I could be wrong.thanksdavid jencks thanks, Rajith