Dear all, I tried to setup a vanilla Apache Karaf 4.3.0 on JDK 11 and install the pax-web-undertow feature.
feature:install pax-http-undertow and further hawtio feature:repo-add hawtio 2.12.1 feature:install hawtio I'm getting this error message org.apache.felix.resolver.reason.ReasonException: Uses constraint violation. Unable to resolve resource org.ops4j.pax.web.pax-web-undertow [org.ops4j.pax.web.pax-web-undertow/7.3.9] because it is exposed to package 'javax.servlet' from resources javax.servlet-api [javax.servlet-api/3.1.0] and javax.servlet-api [javax.servlet-api/4.0.0] via two dependency chains. Chain 1: org.ops4j.pax.web.pax-web-undertow [org.ops4j.pax.web.pax-web-undertow/7.3.9] import: (&(osgi.wiring.package=javax.servlet)(version>=3.1.0)(!(version>=5.0.0))) | export: osgi.wiring.package: javax.servlet javax.servlet-api [javax.servlet-api/3.1.0] Chain 2: org.ops4j.pax.web.pax-web-undertow [org.ops4j.pax.web.pax-web-undertow/7.3.9] import: (&(osgi.wiring.package=io.undertow.servlet)(version>=2.0.0)(!(version>=2.1.0))) | export: osgi.wiring.package=io.undertow.servlet; uses:=javax.servlet io.undertow.servlet [io.undertow.servlet/2.0.31.Final] import: (&(osgi.wiring.package=javax.servlet)(version>=4.0.0)(!(version>=5.0.0))) | export: osgi.wiring.package: javax.servlet javax.servlet-api [javax.servlet-api/4.0.0] at org.apache.felix.resolver.ResolverImpl$UseConstraintError.toException(ResolverImpl.java:2444) at org.apache.felix.resolver.ResolverImpl.doResolve(ResolverImpl.java:463) at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:421) at org.apache.felix.resolver.ResolverImpl.resolve(ResolverImpl.java:375) at org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:257) at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:392) at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1062) at org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:998) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) Error executing command: Uses constraint violation. Unable to resolve resource org.ops4j.pax.web.pax-web-undertow [org.ops4j.pax.web.pax-web-undertow/7.3.9] because it is exposed to package 'javax.servlet' from resources javax.servlet-api [javax.servlet-api/3.1.0] and javax.servlet-api [javax.servlet-api/4.0.0] via two dependency chains. Chain 1: org.ops4j.pax.web.pax-web-undertow [org.ops4j.pax.web.pax-web-undertow/7.3.9] import: (&(osgi.wiring.package=javax.servlet)(version>=3.1.0)(!(version>=5.0.0))) | export: osgi.wiring.package: javax.servlet javax.servlet-api [javax.servlet-api/3.1.0] Chain 2: org.ops4j.pax.web.pax-web-undertow [org.ops4j.pax.web.pax-web-undertow/7.3.9] import: (&(osgi.wiring.package=io.undertow.servlet)(version>=2.0.0)(!(version>=2.1.0))) | export: osgi.wiring.package=io.undertow.servlet; uses:=javax.servlet io.undertow.servlet [io.undertow.servlet/2.0.31.Final] import: (&(osgi.wiring.package=javax.servlet)(version>=4.0.0)(!(version>=5.0.0))) | export: osgi.wiring.package: javax.servlet javax.servlet-api [javax.servlet-api/4.0.0] Any ideas how to solve this? With Karaf 4.2.9 and same JDK it worked. We need undertow as foundation for our Camel Servlet consumers. Best Gerald