geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jay D. McHugh" <>
Subject Re: Geronimo/Tuscany integration
Date Wed, 25 Apr 2007 20:42:28 GMT
Dain is right - Option 1 should probably be a stepping stone on the way 
to 2.


Dain Sundstrom wrote:
> I suggest you get option 1 working before attempting option 2.  I 
> suspect you will find lots of bugs and mismatched assumptions.  Once 
> that is working, option 2 will be much easier to implement since you 
> know it "Should Work".
> -dain
> On Apr 25, 2007, at 1:23 PM, Jay D. McHugh wrote:
>> Hello Raymond,
>> I think it would almost be a shame if the only option for including 
>> Tuscany in Geronimo was to package the runtime jar in individual WAR 
>> files.
>> Tuscany would make an excellent (I think) plugin.
>> Option 2 definitely.
>> Jay
>> Raymond Feng wrote:
>>> Hi, Geronimo community.
>>> As you may know, Tuscany is an Apache project under incubation to 
>>> provide an open source SOA infrastructure. For more information, you 
>>> can visit
>>> Tuscany implements the SCA specification ( and 
>>> allows you to develop and run SCA components in various hosting 
>>> environments. We currently integrate with Tomcat and Jetty and would 
>>> like to try to integrate with Geronimo as well. I would like to 
>>> start some discussions here to figure out the best way to do that.
>>> After some preliminary investigations of Geronimo, I feel that there 
>>> are two options on the table so far.
>>> 1) Shallow integration: Package SCA applications together with the 
>>> Tuscany runtime as WARs and deploy them Geronimo as Web 
>>> applications. It's basically the integration with a Web container. 
>>> We register a TuscanyContextListner (which implements 
>>> javax.servlet.ServletContextListener) in web.xml to start/stop the 
>>> Tuscany runtime when the web application is started/stopped.
>>> This will allow us to support the following use cases:
>>> * A Web application hosted by Geronimo with business logic written 
>>> as SCA components
>>> * Expose one or more SCA components as Web services over HTTP as 
>>> supported by the Web container.
>>> 2) Deep integration: We package the Tuscany runtime and its 
>>> dependencies as Geronimo modules and deploy them to Geronimo (which 
>>> is similar to how Tomcat is integrated as the Web container for 
>>> Geronimo). We can then create a Tuscany plugin (a collection of 
>>> modules) so that it can be added to Geronimo. The Tuscany container 
>>> will then handle SCA-specific deployment plans to install SCA 
>>> applications and provide runtime infrastructure for them.
>>> On top of Option 2, we could further integrate Geronimo's J2EE 
>>> capabilities such as EJB, WS, JMS and JCA with Tuscany. Basically, 
>>> SCA components will be able to access JEE services (using SCA 
>>> composite references) and SCA components will be able to expose 
>>> services (SCA composite services) over JEE protocols as well.
>>> This will allow us to support the following use cases:
>>> * Any J2EE application hosted by Geronimo would be able to take 
>>> advantage of SCA programming model
>>> * Provide SCA services over various protocols such as RMI/IIOP, JMS 
>>> and JCA
>>> * Invoke existing JEE applications (EJB, JMS backend, JCA-based EIS 
>>> or Web Services) from SCA components
>>> Any thoughts?
>>> Thanks,
>>> Raymond
>>> Apache Tuscany committer

View raw message