Uploaded image for project: 'Axis2'
  1. Axis2
  2. AXIS2-4902

Changes in Axiom OSGi support break Axis2 OSGi bundle

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.5.2, 1.5.3
    • 1.6.2, 1.7.0
    • None

    Description

      The problem:

      • In Axis2 1.5.2, we upgraded Axiom to 1.2.9, and Axis2 1.5.3 uses Axiom 1.2.10.
      • In r741656, David Illsley changed the way Axiom is OSGi-ified. In particular the axiom-impl bundle now has Private-Package: org.apache.axiom.*. This is of course entirely correct because other bundles should only depend on the Axiom API, not on classes of a particular implementation.
      • The Axis2 OSGi bundle has Import-Package: org.apache.axiom.om.impl.llom. The reason is that there is indeed code in Axis2 that depends directly on the LLOM implementation classes. This should of course not be the case, but that's the way it is for the moment.
      • There are no unit tests for the Axis2 OSGi bundle.

      Result: In Axis2 1.5.2, the OSGi bundle is broken because of the upgrade to Axiom 1.2.9. It is expected that this issue also affects the current trunk.

      Steps to reproduce (with Axis2 1.5.3):

      1. Download, extract and start the Felix Framework Distribution.

      2. Install the following bundles:

      install http://repo1.maven.org/maven2/org/apache/ws/commons/axiom/axiom-api/1.2.10/axiom-api-1.2.10.jar
      install http://repo1.maven.org/maven2/org/apache/ws/commons/axiom/axiom-impl/1.2.10/axiom-impl-1.2.10.jar
      install http://apache.megamobile.be//felix/org.apache.felix.scr-1.6.0.jar
      install http://repo1.maven.org/maven2/org/apache/axis2/org.apache.axis2.osgi/1.5.3/org.apache.axis2.osgi-1.5.3.jar
      install http://repo2.maven.org/maven2/org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_3/org.apache.servicemix.bundles.wsdl4j-1.6.2_3.jar
      install http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-activation_1.1_spec/1.1/geronimo-activation_1.1_spec-1.1.jar
      install http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar
      install http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-ws-metadata_2.0_spec/1.1.3/geronimo-ws-metadata_2.0_spec-1.1.3.jar
      install http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-javamail_1.4_spec/1.7.1/geronimo-javamail_1.4_spec-1.7.1.jar
      install http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-servlet_2.5_spec/1.2/geronimo-servlet_2.5_spec-1.2.jar
      install http://repo2.maven.org/maven2/org/apache/geronimo/specs/geronimo-stax-api_1.0_spec/1.0.1/geronimo-stax-api_1.0_spec-1.0.1.jar
      install http://repository.springsource.com/maven/bundles/external/org/apache/commons/com.springsource.org.apache.commons.logging/1.1.1/com.springsource.org.apache.commons.logging-1.1.1.jar

      3. Attempt to start the Axis2 bundle.

      This results in the following error:

      org.osgi.framework.BundleException: Unresolved constraint in bundle org.apache.axis2.osgi [8]: Unable to resolve 8.0: missing requirement [8.0] package; (package=org.apache.axiom.om.impl.llom)

      Attachments

        Issue Links

          Activity

            People

              veithen Andreas Veithen
              veithen Andreas Veithen
              Votes:
              2 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: