0 Replies Latest reply on Jan 22, 2013 3:46 AM by loik

    OSGi issues: How to deploy jBPM 5.4.0 in Fuse ESB 4.4.1?

      Hi,

      I'm trying to deploy jBPM 5.4.0 in Apache-ServiceMix-4.4.1-Fuse-07-11 and I get the following dependency issues:

       

      I dropped these bundles in $FUSE_HOME/deploy:

      drools-compiler-5.5.0.Final.jar

      drools-core-5.5.0.Final.jar

      jaxb-xjc-2.1.9-osgi.jar

      jbpm-bpmn2-5.4.0.Final.jar

      jbpm-flow-5.4.0.Final.jar

      jbpm-flow-builder-5.4.0.Final.jar

      jbpm-persistence-jpa-5.4.0.Final.jar

      knowledge-api-5.5.0.Final.jar

      knowledge-internal-api-5.5.0.Final.jar

      mvel2-2.1.1.Final.jar

      protobuf-java-2.4.1.jar

       

      These bundles deploy successfully.

      Then I deploy my jBPM client bundle, that makes use of the jBPM API and I get the following error:

       

      Error executing command: Unable to resolve module jbpm-workflowmanager [249.24] because it is exposed to package 'org.drools' from

      org.drools.core [284.0] and org.drools.api [279.0] via two dependency chains.

       

       

      Chain 1:

        jbpm-workflowmanager [249.24]

          import: (&(package=org.drools)(version>=5.5.0))

           |

          export: package=org.drools

        org.drools.core [284.0]

       

       

      Chain 2:

        jbpm-workflowmanager [249.24]

          import: (&(package=org.drools.runtime)(version>=5.5.0))

           |

          export: package=org.drools.runtime; uses:=org.drools

          export: package=org.drools

        org.drools.api [279.0]

       

       

       

      I'm wondering why both the Drools Core (bundle #284) and Knowledge API (bundle #279) both export the org.drools package?

      This is what seems to be causing the issue.

      The jBPM 5.4.0 jars are supposed to be OSGi-ready so I'm wondering what's wrong (I'm no OSGi dependency management expert).

       

      Any help is very welcome!

      Pat.