CXF feature missing dependencies
wayn23 Sep 30, 2011 11:32 AMI downloaded apache-servicemix-4.4.1-fuse-00-06 and installed and can run it fine.
I wanted to change the features that are installed by default and changed the etc\org.apache.karaf.features.cfg file entry from
featuresBoot=karaf-framework,config,activemq-broker,camel,camel-activemq,camel-nmr,camel-cxf,camel-blueprint,jbi-cluster,war,servicemix-cxf-bc,servicemix-file,servicemix-ftp,servicemix-http,servicemix-jms,servicemix-mail,servicemix-smpp,servicemix-snmp,servicemix-vfs,servicemix-bean,servicemix-camel,servicemix-cxf-se,servicemix-drools,servicemix-eip,servicemix-osworkflow,servicemix-quartz,servicemix-scripting,servicemix-validation,servicemix-saxon,servicemix-wsn2005
to
featuresBoot=karaf-framework,config,cxf
When karaf starts it complains
...
09:35:27,612 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing feature config 2.2.2-fuse-00-06
09:35:27,612 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.apache.karaf.shell/org.apache.karaf.shell.config/2.2.2-fuse-00-06
09:35:27,659 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing feature cxf 2.4.2-fuse-00-06
09:35:27,675 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing feature spring 3.0.5.RELEASE
09:35:28,190 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-beans/3.0.5.RELEASE
09:35:28,237 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-context-support/3.0.5.RELEASE
09:35:28,300 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-context/3.0.5.RELEASE
09:35:28,378 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-expression/3.0.5.RELEASE
09:35:28,425 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-asm/3.0.5.RELEASE
09:35:28,456 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-core/3.0.5.RELEASE
09:35:28,519 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.springframework/spring-aop/3.0.5.RELEASE
09:35:28,565 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Installing bundle mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/1.0_5
09:35:41,971 | INFO | Thread-6 | FeaturesServiceImpl | 18 - org.apache.karaf.features.core - 2.2.2.fuse-00-06 | Error when installing feature cxf: java.lang.Exception: Can not resolve feature:
Unsatisfied requirement(s):
-
package:(&(package=javax.transaction.xa))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream.util))
Stax2 API
package:(&(package=javax.xml.ws.wsaddressing)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.activation))
Axiom API
package:(&(package=javax.xml.bind.annotation)(version>=2.2.0))
Apache ServiceMix :: Specs :: JAXWS API 2.2
package:(&(package=javax.xml.ws.handler)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream))
Woodstox XML-processor
package:(&(package=javax.xml.stream.events))
Woodstox XML-processor
package:(&(package=javax.activation))
Apache ServiceMix :: Bundles :: saaj-impl
package:(&(package=javax.xml.stream.util))
jettison
package:(&(package=javax.xml.stream)(!(version>=2.0.0)))
Apache CXF Bundle Jar
package:(&(package=org.apache.abdera.i18n.text)(version>=1.1.2)(!(version>=1.1.3)))
Abdera Core
package:(&(package=javax.xml.bind))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream.events)(version>=1.0.0)(!(version>=2.0.0)))
Apache Neethi
package:(&(package=javax.xml.ws.spi)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.bind.util))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream.util)(version>=1.0.0)(!(version>=2.0.0)))
Apache ServiceMix :: Bundles :: FastInfoset
package:(&(package=javax.xml.ws.soap)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream))
jettison
package:(&(package=javax.xml.bind.annotation.adapters))
Apache CXF Bundle Jar
package:(&(package=javax.activation)(!(version>=2.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.bind.annotation))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream)(version>=1.0.0)(!(version>=2.0.0)))
Apache ServiceMix :: Bundles :: FastInfoset
package:(&(package=javax.xml.stream.events)(version>=1.0.0)(!(version>=2.0.0)))
Apache ServiceMix :: Bundles :: FastInfoset
package:(&(package=javax.activation))
I18N Libraries
package:(&(package=javax.xml.stream))
Stax2 API
package:(&(package=javax.xml.stream.events))
jettison
package:(&(package=javax.xml.stream)(!(version>=2.0.0)))
Apache Neethi
package:(&(package=javax.xml.stream.util))
Apache ServiceMix :: Bundles :: xmlbeans
package:(&(package=javax.xml.stream)(version>=1.0.0)(!(version>=2.0.0)))
Abdera Core
package:(&(package=org.apache.abdera.i18n.iri)(version>=1.1.2)(!(version>=1.1.3)))
Abdera Core
package:(&(package=org.apache.neethi)(version>=3.0.0)(!(version>=4.0.0)))
Apache CXF Bundle Jar
package:(&(package=org.apache.abdera.i18n.rfc4646)(version>=1.1.2)(!(version>=1.1.3)))
Abdera Core
package:(&(package=javax.xml.stream.events))
Stax2 API
package:(&(package=javax.servlet))
Apache ServiceMix :: Bundles :: opensaml
package:(&(package=org.codehaus.stax2)(version>=3.1.1))
Woodstox XML-processor
package:(&(package=javax.xml.bind)(version>=2.2.0))
Apache ServiceMix :: Specs :: JAXWS API 2.2
package:(&(package=javax.xml.ws.http)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.ws)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream.util))
Woodstox XML-processor
package:(&(package=javax.xml.stream.events)(!(version>=2.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.transaction.xa))
geronimo-jms_1.1_spec
package:(&(package=javax.activation))
JavaMail API (compat)
package:(&(package=javax.xml.stream))
Apache ServiceMix :: Bundles :: xmlbeans
package:(&(package=javax.xml.bind.attachment))
Apache CXF Bundle Jar
package:(&(package=javax.activation))
Abdera Core
package:(&(package=javax.activation))
Apache ServiceMix :: Specs :: SAAJ API 1.3
package:(&(package=javax.xml.stream))
Axiom API
package:(&(package=javax.servlet.http))
Apache ServiceMix :: Bundles :: opensaml
package:(&(package=javax.xml.soap))
Apache CXF Bundle Jar
package:(&(package=javax.mail)(!(version>=2.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.ws.handler.soap)(!(version>=3.0.0)))
Apache CXF Bundle Jar
package:(&(package=org.apache.abdera.i18n.text.io)(version>=1.1.2)(!(version>=1.1.3)))
Abdera Core
package:(&(package=javax.xml.stream.util)(!(version>=2.0.0)))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream.util))
Axiom API
I assume that there is a feature dependency that is brought in by other features in the original featureBoot that the cxf feature is missing. Is my understanding correct?
Also, I find the error message hard to understand. Am I interpretting it right, for example
package:(&(package=javax.transaction.xa))
Apache CXF Bundle Jar
package:(&(package=javax.xml.stream.util))
Stax2 API
means that the
Apache CXF Bundle cannot import javax.transaction.xa
Stax2 API bundle cannot import javax.xml.stream.util
When I do a packages:export command, I see that both those packages are exported from bundle 0 org.apache.felix.framework
karaf@root> packages:exports -s | grep javax.transaction.xa
0 org.apache.felix.framework javax.transaction.xa; version=0.0.0
66 org.apache.geronimo.specs.geronimo-jta_1.1_spec javax.transaction.xa; version=1.1.0
karaf@root> packages:exports -s | grep javax.xml.stream.util
0 org.apache.felix.framework # javax.xml.stream.util; version=0.0.0
That leads me to believe I am not understanding what the error message is about.