Hi,

I prefer to have the design discussion be carried on the tuscany-dev ML instead of JIRA :-).

We already have the maven-bundle-plugin that do all the tricks to enable OSGi for 3rd party jars (run mvn -Peclipse under sca/distribution/all), including:
1) Generate MANIFEST.MF for plain jars in the distribution
2) Merge multiple jars into one bundle
3) Override MANIFEST.MF for 3rd part bundles with problematic MF

Then these bundles can be set as the Eclipse PDE target platform which is used to resolve the bundle dependencies for Tuscany modules. I have fixed the Import-Package under [1] and verified that it works in PDE and Equinox console.

Do you have a test case that I can use to validate the impl.bpel under OSGi?

[1]  http://svn.apache.org/viewvc?rev=788804&view=rev

Thanks,
Raymond
--------------------------------------------------
From: "Mike Edwards (JIRA)" <[email protected]>
Sent: Friday, June 26, 2009 3:07 AM
To: <[email protected]>
Subject: [jira] Commented: (TUSCANY-3123) Enable implementation-bpel-runtime for OSGi on SCA Java 2.0


[ https://issues.apache.org/jira/browse/TUSCANY-3123?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12724456#action_12724456 ]

Mike Edwards commented on TUSCANY-3123:
---------------------------------------

Design approach:

Build a single JAR containing the implementation-bpel-runtime classes PLUS the ODE JARs and a selected set of the ODE dependency JARs.

The ODE and ODE dependency JARs are then also placed into the Bundle-Classpath: attribute of the MANIFEST.MF so that all the classes from those JARs are all loaded by the classloader of the implementation-bpel-runtime bundle, so avoiding the problems of not finding the provider classes and also not requiring us to produce specialized MANIFEST files for each of these non-Tuscany JARs.

Note that when not running under OSGi, these embedded JARs are ignored.

Enable implementation-bpel-runtime for OSGi on SCA Java 2.0
-----------------------------------------------------------

                Key: TUSCANY-3123
                URL: https://issues.apache.org/jira/browse/TUSCANY-3123
            Project: Tuscany
         Issue Type: Bug
   Affects Versions: Java-SCA-2.0
           Reporter: Mike Edwards
           Assignee: Mike Edwards
            Fix For: Java-SCA-2.0


implementation-bpel-runtime has a major dependency on the Apache ODE project, which provides the runtime BPEL execution engine required to run BPEL processes. As well as the direct dependencies on ODE modules, ODE itself has a large web of dependencies on modules from a range of other sources. The problem with ODE and its web of dependencies is that very few of them are built for OSGi and simply using the individual JARs causes classloading failures in many places. One of the biggest issues is that there are API / Provider pairs that use the META-INF/services approach to loading the provider classes for the API. This requires that special handling is done for the implementation-bpel-runtime module in order for it to run successfully under OSGi.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to