Hi, Jim.

Thank you for the quick response. You pretty much caught all the fuzzy things in the prototype:-). Please see my comments below.

Raymond

----- Original Message ----- From: "Jim Marino" <[EMAIL PROTECTED]>
To: <tuscany-dev@ws.apache.org>
Sent: Monday, May 22, 2006 2:01 PM
Subject: Re: [jira] Updated: (TUSCANY-415) Add a Spring container to Tuscany so that Spring beans can be used as an implementation for SCA components


Hi Raymond,

I took a look at the implementation and have a few observations:

- It appears that a Spring application context is created for each method on a bean. Was this intentional, since I would have thought that a Spring application context would be created per composite? In other words, for a module, there would be one Spring application context with many Spring beans in it. This approach would allow an application developer to use Spring to wire their beans together. The per method approach won't allow for this type of wiring.


- The above also leads to operations being dispatched to different bean instances, which complicates Spring semantics since it also has the concept of singleton, request and session scopes where operations are routed to particular instances.


It was NOT intentional. I haven't figured out how Spring utilize the context/scope by reading the reference document and that's why the prototype only deals with singleton or per request.

- I'm not sure we need a component type file (or at least it shouldn't be required). I believe most assembly information can be introspected from the Spring ApplicationContext, BeanContext, and BeanWrapper.


You're right. I copied some code from the Javascript container and wanted to see the 1st Spring bean to be invoked from Tuscany. The componentType should be able to introspect from the Spring metadata. One interesting question: It seems that Spring doesn't require the POJO to have an interface. Do we want to attach (or dynamically generate) one?


In the spec group we have started to discuss Spring integration and have taken the approach of having a Spring application context modeled as a composite. Perhaps we could align around that? I'm happy to help out so if you want to commit it to the sandbox we can look at together.


Yes, agree.

Meanwhile, I understand you and Jeremy have efforts going on in the sandbox to define the SPI layer. I think it would be a good excercise to refactor the prototype on top of the new contract. The prototype can serve as a base to attract people to make it mature.

Jim

On May 22, 2006, at 1:08 PM, Raymond Feng (JIRA) wrote:

     [ http://issues.apache.org/jira/browse/TUSCANY-415?page=all ]

Raymond Feng updated TUSCANY-415:
---------------------------------

    Attachment: tuscany-container-spring.zip

Here's a prototype which allows Tuscany consumes components implemented as a Spring bean.


Add a Spring container to Tuscany so that Spring beans can be used as an implementation for SCA components --------------------------------------------------------------------- -------------------------------------

         Key: TUSCANY-415
         URL: http://issues.apache.org/jira/browse/TUSCANY-415
     Project: Tuscany
        Type: New Feature



    Versions: Java-Mx
    Reporter: Raymond Feng
    Assignee: Raymond Feng
     Fix For: Java-Mx
 Attachments: tuscany-container-spring.zip




--
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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to