You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by Raymond Feng <en...@gmail.com> on 2008/08/05 08:46:55 UTC

Re: Tuscany with Equinox runtime

Hi,

Thank you for your interest in Tuscany/OSGi integration.

As far as I can see, there are different layers of Tuscany integration with OSGi.

1) Package tuscany runtime modules and 3rd party dependencies as OSGi bundles, and use an OSGi runtime such as Felix or Equinox to install/run these bundles. This feature enables the assembly of Tuscany runtime as OSGi bundles and it formalizes the SPI contracts (class visibility across modules) using the OSGi Import-Package/Export-Package headers. 

* tuscany-extensibility-osgi: https://svn.apache.org/repos/asf/tuscany/java/sca/modules/extensibility-osgi (Based on Felix for testing)
* tuscany-extensibility-eclipse: https://svn.apache.org/repos/asf/tuscany/java/sca/modules/extensibility-eclipse (based on Equinox)

These two modules enable the META-INF/services provider pattern to work with the OSGi bundles.

* tuscany-node2-launcher-osgi: https://svn.apache.org/repos/asf/tuscany/java/sca/modules/node2-launcher-osgi

This special launcher will discover tuscany bundles and 3rd party jars on paths defined by TUSCANY_HOME and TUSCANY_PATH system properties/environment variables. It will start an embedded OSGi runtime (Felix, Equinox or other), install (or wrap plain jars into) bundles, and use the SCA Node/Domain APIs to create/launch SCA nodes or domain manager. 

The following testcase demonstrates the usage of this launcher to run HelloWorld composite and SCA Domain Manager:
/tuscany-node2-launcher-osgi/src/test/java/org/apache/tuscany/sca/node/osgi/launcher/NodeLauncherTestCase.java

2) Package application artifacts into OSGi bundles and contribute them to SCA domain as SCA contributions

* tuscany-contribution-osgi: https://svn.apache.org/repos/asf/tuscany/java/sca/modules/contribution-osgi

3) Support OSGi bundle as a component implementation type for Tuscany/SCA, expose OSGi services as SCA services and inject references to OSGi services

* tuscany-implementation-osgi: https://svn.apache.org/repos/asf/tuscany/java/sca/modules/implementation-osgi

Rajini, can you provide some status updates on item 2 and 3?

Thanks,
Raymond


From: joel srinivas 
Sent: Sunday, August 03, 2008 9:55 AM
To: user@tuscany.apache.org 
Subject: Tuscany with Equinox runtime


Hi,

We have an application which is built using OSGi and all our application code is bundled as OSGi bundles along with Equinox runtime
We use Equinox as the OSGi  runtime.
Our application is deployed as a .EAR in JBOSS and we use underlying JBOSS server resources like transaction,connection pooling ,HA,fail over and other App server specific resources.

We are  planning to migrate the application onto Apacahe Tuscany as we want to  get most from SCA.

Would you please answer the following queries?

1.Can we retain our application as OSGi bundles and  have it deployed into the Tuscany platform and provide the wiring/assembling with appropriate composite files?

2.Can we use Equinox as our OSGi runtime for better classloading and other features?( It would be great if Tuscany supports osgi runtime)

3.Though we are not using any EJBs in our application, we want the transactionality/HA  and other application server features.Can we deploy tuscany as a .EAR file and somehow enable Tuscany to use the underlying resources of App server resources as shared resources?

4.Does Tuscany have any plans of using SPRING DM for dependency injection of services across bundles?

Many Thanks
Joe






--------------------------------------------------------------------------------
Not happy with your email address? 
Get the one you really want - millions of new email addresses available now at Yahoo!

Re: Tuscany with Equinox runtime

Posted by Rajini Sivaram <ra...@googlemail.com>.
On 8/5/08, Raymond Feng <en...@gmail.com> wrote:
>
>  Hi,
>
> Thank you for your interest in Tuscany/OSGi integration.
>
> As far as I can see, there are different layers of Tuscany integration with
> OSGi.
>
> 1) Package tuscany runtime modules and 3rd party dependencies as OSGi
> bundles, and use an OSGi runtime such as Felix or Equinox to install/run
> these bundles. This feature enables the assembly of Tuscany runtime as OSGi
> bundles and it formalizes the SPI contracts (class visibility across
> modules) using the OSGi Import-Package/Export-Package headers.
>
> * tuscany-extensibility-osgi:
> https://svn.apache.org/repos/asf/tuscany/java/sca/modules/extensibility-osgi (Based
> on Felix for testing)
> * tuscany-extensibility-eclipse:
> https://svn.apache.org/repos/asf/tuscany/java/sca/modules/extensibility-eclipse (based
> on Equinox)
>
> These two modules enable the META-INF/services provider pattern to work
> with the OSGi bundles.
>
> * tuscany-node2-launcher-osgi:
> https://svn.apache.org/repos/asf/tuscany/java/sca/modules/node2-launcher-osgi
>
> This special launcher will discover tuscany bundles and 3rd party jars on
> paths defined by TUSCANY_HOME and TUSCANY_PATH system properties/environment
> variables. It will start an embedded OSGi runtime (Felix, Equinox or other),
> install (or wrap plain jars into) bundles, and use the SCA Node/Domain APIs
> to create/launch SCA nodes or domain manager.
>
> The following testcase demonstrates the usage of this launcher to run
> HelloWorld composite and SCA Domain Manager:
>
> /tuscany-node2-launcher-osgi/src/test/java/org/apache/tuscany/sca/node/osgi/launcher/NodeLauncherTestCase.java
>
> 2) Package application artifacts into OSGi bundles and contribute them to
> SCA domain as SCA contributions
>
> * tuscany-contribution-osgi:
> https://svn.apache.org/repos/asf/tuscany/java/sca/modules/contribution-osgi
>
> 3) Support OSGi bundle as a component implementation type for Tuscany/SCA,
> expose OSGi services as SCA services and inject references to OSGi services
>
> * tuscany-implementation-osgi:
> https://svn.apache.org/repos/asf/tuscany/java/sca/modules/implementation-osgi
>
> Rajini, can you provide some status updates on item 2 and 3?
>

Both 2) and 3) should work fine with the latest builds. Examples of 2) can
be found in itest/osgi-contribution, and examples of 3) can be found in
samples/osgi-supplychain as well as itest/osgi-implementation.


> Thanks,
> Raymond
>
>
>  *From:* joel srinivas <jo...@yahoo.com>
> *Sent:* Sunday, August 03, 2008 9:55 AM
> *To:* user@tuscany.apache.org
> *Subject:* Tuscany with Equinox runtime
>
>
>  Hi,
>
> We have an application which is built using OSGi and all our application
> code is bundled as OSGi bundles along with Equinox runtime
> We use Equinox as the OSGi  runtime.
> Our application is deployed as a .EAR in JBOSS and we use underlying JBOSS
> server resources like transaction,connection pooling ,HA,fail over and other
> App server specific resources.
>
> We are  planning to migrate the application onto Apacahe Tuscany as we want
> to  get most from SCA.
>
> Would you please answer the following queries?
>
> 1.Can we retain our application as OSGi bundles and  have it deployed into
> the Tuscany platform and provide the wiring/assembling with appropriate
> composite files?
>
> 2.Can we use Equinox as our OSGi runtime for better classloading and other
> features?( It would be great if Tuscany supports osgi runtime)
>
> 3.Though we are not using any EJBs in our application, we want the
> transactionality/HA  and other application server features.Can we deploy
> tuscany as a .EAR file and somehow enable Tuscany to use the underlying
> resources of App server resources as shared resources?
>
> 4.Does Tuscany have any plans of using SPRING DM for dependency injection
> of services across bundles?
>
> Many Thanks
> Joe
>
>
>
>
>
> ------------------------------
> Not happy with your email address?
> Get the one you really want <http://uk.docs.yahoo.com/ymail/new.html> -
> millions of new email addresses available now at Yahoo!<http://uk.docs.yahoo.com/ymail/new.html>
>



-- 
Thank you...

Regards,

Rajini