Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

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.

...

OSGi bundles as SCA contributions (OSGi providing modularity for Java implementation types (e.g. implementation.osgi and implementation.java)).

...

OSGi bundles as an implementation technology for SCA components (implementation.osgi). Here OSGi services and references are mapped to SCA services/references and can be integrated with other
implementation technologies (e.g. BPEL, POJO, Groovy, etc...) and invoked or can invoke over the various SCA bindings. This is business as usual for SCA, which is designed to enable the assembly of
heterogeneous implementation technologies.

...

Different approaches to convert 3rd party jars into OSGi

Strategy

Options

Pros

Cons

Note

Build-time conversion

  • Using tools (such as maven-bundle-plugin) to convert plain jars into OSGi bundles
  • Use already-converted 3rd party bundles from Spring DM, FElix Common or Eclipse Orbit

 

 

 

Runtime converstion

  • Before the jar is installed (BundleContext.installBundle())
  • Add a hook to the OSGi runtime to wrap the jar (such as

 

 

 

Hybrid conversion

  • Build-time will generate the META-INF/MANIFEST.MF as a side file
  • Runtime will wrap the 3rd party jar with the side file