Stephan Siano created CAMEL-17957:
-------------------------------------

             Summary: CXF import range too restrictive in OSGi
                 Key: CAMEL-17957
                 URL: https://issues.apache.org/jira/browse/CAMEL-17957
             Project: Camel
          Issue Type: Bug
          Components: came-cxf, karaf, osgi
    Affects Versions: 3.14.2
            Reporter: Stephan Siano


The camel-cxf and camel-cxf transport bundles do not wire with CXF 3.4.5 in 
Camel 3.14.2 on a Karaf 4.3.6 container (the latest version).

The error is:
Unsatisfied Requirements:
[org.apache.camel.camel-cxf-transport [161](R 161.0)] osgi.wiring.package; 
(&(osgi.wiring.package=org.apache.cxf)(version>=3.4.0)(version<=3.4.0)) 
[org.apache.camel.camel-cxf-transport [161](R 161.0)] 
...

The problem is the import range for the CXF bundles of [3.4,3.4]. The karaf 
container will interpret that as "exactly version 3.4.0" so this will wire with 
CXF 3.4.0 but nothing else. I think what is mean here is to have any CXF 3.4 
version, but then the import range should be [3.4,3.5) instead (this means the 
version has to be greater or equal 3.4.0 and smaller than 3.5.0). If I manually 
change that in the bundle manifests, wiring with CXF 3.4.5 works.

The issue was introduced with CAMEL-17137, so it should all branches where 
thich change was applied.

The fix for this is to change the cxf-version-range property in parent/pom.xml
from
<cxf-version-range>[3.5,3.5]</cxf-version-range>
to
<cxf-version-range>[3.5,3.6)</cxf-version-range>

and from
<cxf-version-range>[3.4,3.4]</cxf-version-range>
to
<cxf-version-range>[3.4,3.5)</cxf-version-range>
in the different branches.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to