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 (JIRA)" <de...@geronimo.apache.org> on 2006/02/02 11:01:43 UTC

[jira] Created: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Spring integration -- wrap our components in spring interfaces
--------------------------------------------------------------

         Key: GERONIMO-1574
         URL: http://issues.apache.org/jira/browse/GERONIMO-1574
     Project: Geronimo
        Type: New Feature
    Versions: 1.1    
    Reporter: David Jencks
 Assigned to: David Jencks 
     Fix For: 1.1


For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Posted by "David Jencks (JIRA)" <de...@geronimo.apache.org>.
    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12364981 ] 

David Jencks commented on GERONIMO-1574:
----------------------------------------

>>Why not simply expose the TransactionManager in JNDI ? 
1. because we don't have a global jndi context we could use, and if we did we still shouldn't make it easy to get the tm
2. because if you use the tm rather than the TransactionContextManager you lose a lot of J2CA functionality including connection leak "compensation" for appropriate connectors and the "reassociate to the right connection" when you hold connections over method calls and use container managed security for j2ca.
3. the code in springs JtaTransactionManager seems extremely complicated because it never knows what it has to work with.  Since we know, we can have much simpler code.

>>Btw, i have made lots of tests on this area for the jencks project and the main problem is that spring sometime assumes that the TransactionManager and UserTransaction are somewhat linked.

What UserTransaction?  The Geronimo UT is certainly linked to our TCM, and if we use the TCM as the backing for the spring TM anything spring comes up with for a UT will also be linked to the TCM.  Can you explain in more detail?

>>In facts, as the spring transaction manager may be used in EJB, web apps, etc to access managed resources, I think the factory bean should return the UserTransaction instead of the TransactionManager.

What factory bean?

>>But some functions won't be available such as suspend / resume, because the UserTransaction and TransactionManager implementations are not linked.
Please explain.

I'll look at your example.

 

> Spring integration -- wrap our components in spring interfaces
> --------------------------------------------------------------
>
>          Key: GERONIMO-1574
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>      Project: Geronimo
>         Type: New Feature
>     Versions: 1.1
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.1

>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Updated: (GERONIMO-1574) Spring integration with Geronimo Transaction Manager

Posted by "Matt Hogstrom (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=all ]

Matt Hogstrom updated GERONIMO-1574:
------------------------------------

    Fix Version/s: Wish List
                       (was: 1.2)

> Spring integration with Geronimo Transaction Manager
> ----------------------------------------------------
>
>                 Key: GERONIMO-1574
>                 URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>             Project: Geronimo
>          Issue Type: New Feature
>      Security Level: public(Regular issues) 
>          Components: transaction manager
>    Affects Versions: 1.2
>            Reporter: David Jencks
>         Assigned To: David Jencks
>             Fix For: Wish List
>
>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Re: [jira] Commented: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Posted by Guillaume Nodet <gu...@worldonline.fr>.
Yes, I may have a bit off the track.
Thanks for the clarification.

Cheers,
Guillaume Nodet

David Jencks (JIRA) wrote:

>    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12364982 ] 
>
>David Jencks commented on GERONIMO-1574:
>----------------------------------------
>
>After looking at the jencks example, I'd like to clarify that the point of this jira entry is very different from the goal of the jencks project.  The jencks project tries to run geronimo components in spring, with no geronimo infrastructure present, thus it needs bean factories etc for the geronimo transaction and connector components.  This jira issue deals with running a spring project inside geronimo, and giving it access to geronimo components deployed in geronimo, using geronimo plans, kernel, gbeans, etc etc.  Here, we need to provide spring wrappers that wrap independently deployed gbeans, not deploy the classes underlying the gbeans as spring components.
>
>  
>
>>Spring integration -- wrap our components in spring interfaces
>>--------------------------------------------------------------
>>
>>         Key: GERONIMO-1574
>>         URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>>     Project: Geronimo
>>        Type: New Feature
>>    Versions: 1.1
>>    Reporter: David Jencks
>>    Assignee: David Jencks
>>     Fix For: 1.1
>>    
>>
>
>  
>
>>For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.
>>    
>>
>
>  
>


[jira] Commented: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Posted by "David Jencks (JIRA)" <de...@geronimo.apache.org>.
    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12364982 ] 

David Jencks commented on GERONIMO-1574:
----------------------------------------

After looking at the jencks example, I'd like to clarify that the point of this jira entry is very different from the goal of the jencks project.  The jencks project tries to run geronimo components in spring, with no geronimo infrastructure present, thus it needs bean factories etc for the geronimo transaction and connector components.  This jira issue deals with running a spring project inside geronimo, and giving it access to geronimo components deployed in geronimo, using geronimo plans, kernel, gbeans, etc etc.  Here, we need to provide spring wrappers that wrap independently deployed gbeans, not deploy the classes underlying the gbeans as spring components.

> Spring integration -- wrap our components in spring interfaces
> --------------------------------------------------------------
>
>          Key: GERONIMO-1574
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>      Project: Geronimo
>         Type: New Feature
>     Versions: 1.1
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.1

>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Posted by "David Jencks (JIRA)" <de...@geronimo.apache.org>.
    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12364942 ] 

David Jencks commented on GERONIMO-1574:
----------------------------------------

Also increased spring version to 1.2.6
Sending        etc/project.properties
Transmitting file data .
Committed revision 374338.  

> Spring integration -- wrap our components in spring interfaces
> --------------------------------------------------------------
>
>          Key: GERONIMO-1574
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>      Project: Geronimo
>         Type: New Feature
>     Versions: 1.1
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.1

>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Posted by "Guillaume Nodet (JIRA)" <de...@geronimo.apache.org>.
    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12364945 ] 

Guillaume Nodet commented on GERONIMO-1574:
-------------------------------------------

Why not simply expose the TransactionManager in JNDI ?
It may already be the case, and there would be no need of such a factory bean.

Btw, i have made lots of tests on this area for the jencks project and the main problem is that spring sometime assumes that the TransactionManager and UserTransaction are somewhat linked.

In facts, as the spring transaction manager may be used in EJB, web apps, etc to access managed resources, I think the factory bean should return the UserTransaction instead of the TransactionManager.
But some functions won't be available such as suspend / resume, because the UserTransaction and TransactionManager implementations are not linked.

In the jencks project, i have written some classes to make the bridge between the UserTransaction and TransactionManager.
See http://cvs.codehaus.org/viewrep/jencks/jencks/src/main/java/org/apache/geronimo/transaction/context

Here is a working example on how to use spring with geronimo transaction layer:
http://cvs.codehaus.org/viewrep/jencks/jencks/src/test/resources/org/jencks/spring-request-reply-jta.xml?r=1.4



> Spring integration -- wrap our components in spring interfaces
> --------------------------------------------------------------
>
>          Key: GERONIMO-1574
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>      Project: Geronimo
>         Type: New Feature
>     Versions: 1.1
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.1

>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (GERONIMO-1574) Spring integration -- wrap our components in spring interfaces

Posted by "David Jencks (JIRA)" <de...@geronimo.apache.org>.
    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12364940 ] 

David Jencks commented on GERONIMO-1574:
----------------------------------------

Here's a spring transaction manager wrapper around our TransactionContextManager.  I have no idea whatsoever how to test this.

Adding         spring
Adding         spring/LICENSE.txt
Adding         spring/NOTICE.txt
Adding         spring/project.xml
Adding         spring/src
Adding         spring/src/java
Adding         spring/src/java/org
Adding         spring/src/java/org/apache
Adding         spring/src/java/org/apache/geronimo
Adding         spring/src/java/org/apache/geronimo/spring
Adding         spring/src/java/org/apache/geronimo/spring/transaction
Adding         spring/src/java/org/apache/geronimo/spring/transaction/SpringTransactionManager.java
Transmitting file data ....
Committed revision 374335.  

> Spring integration -- wrap our components in spring interfaces
> --------------------------------------------------------------
>
>          Key: GERONIMO-1574
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>      Project: Geronimo
>         Type: New Feature
>     Versions: 1.1
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.1

>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Closed: (GERONIMO-1574) Spring integration with Geronimo Transaction Manager

Posted by "David Jencks (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=all ]

David Jencks closed GERONIMO-1574.
----------------------------------

    Resolution: Won't Fix

After the tx refactoring and global jndi, you should be able to access the geronimo tx manager in spring using the normal spring components.

> Spring integration with Geronimo Transaction Manager
> ----------------------------------------------------
>
>                 Key: GERONIMO-1574
>                 URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>             Project: Geronimo
>          Issue Type: New Feature
>      Security Level: public(Regular issues) 
>          Components: transaction manager
>    Affects Versions: 1.2
>            Reporter: David Jencks
>         Assigned To: David Jencks
>             Fix For: Wish List
>
>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (GERONIMO-1574) Spring integration with Geronimo Transaction Manager

Posted by "Dain Sundstrom (JIRA)" <de...@geronimo.apache.org>.
     [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=all ]

Dain Sundstrom updated GERONIMO-1574:
-------------------------------------

      Summary: Spring integration with Geronimo Transaction Manager  (was: Spring integration -- wrap our components in spring interfaces)
    Component: transaction manager

> Spring integration with Geronimo Transaction Manager
> ----------------------------------------------------
>
>          Key: GERONIMO-1574
>          URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>      Project: Geronimo
>         Type: New Feature
>     Security: public(Regular issues) 
>   Components: transaction manager
>     Versions: 1.2
>     Reporter: David Jencks
>     Assignee: David Jencks
>      Fix For: 1.2

>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Commented: (GERONIMO-1574) Spring integration with Geronimo Transaction Manager

Posted by "Matt Hogstrom (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/GERONIMO-1574?page=comments#action_12450647 ] 
            
Matt Hogstrom commented on GERONIMO-1574:
-----------------------------------------

Dain, I think some of this is addressed with the new refactoring of the Tx manager.  Thoughts?

> Spring integration with Geronimo Transaction Manager
> ----------------------------------------------------
>
>                 Key: GERONIMO-1574
>                 URL: http://issues.apache.org/jira/browse/GERONIMO-1574
>             Project: Geronimo
>          Issue Type: New Feature
>      Security Level: public(Regular issues) 
>          Components: transaction manager
>    Affects Versions: 1.2
>            Reporter: David Jencks
>         Assigned To: David Jencks
>             Fix For: Wish List
>
>
> For a reasonable spring integration, we need to expose some of our components wrapped in spring interfaces.  The most obvious is the transaction manager.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira