Hi,

I guess you use your own Karaf distribution.

Pax Web 4.3.1 should not be there (Karaf 4.3.x provides/embeds Pax Web 7.3.x).

So, you probably have a reference somewhere to Pax Web 4.3.1 (I bet on mistake 
in property used in pom.xml).

Anyway, if Pax Web 4.3.1 comes from a features repo on which you don’t have 
control, you can always blacklist in etc/org.apache.karaf.features.xml.

Regards
JB

> Le 23 avr. 2021 à 09:39, Richard Hierlmeier <[email protected]> a 
> écrit :
> 
> 
> I currenty migrating an application from Karaf 3 to Karaf 4.3.1. I cannot get 
> it running.
> I guess the problem is related to a servlet that has web socket support
> 
> I found out that I have two versions of Jetty in my application:
> 
> karaf@root()> feature:list -i |grep -i jetty
> jetty                   | 9.4.38.v20210224 |          | Started | 
> standard-4.3.1           | Transition feature for backward compatibility
> pax-jetty               | 9.2.21.v20170120 |          | Started | 
> org.ops4j.pax.web-4.3.1  | Provide Jetty engine support
> cxf-http-jetty          | 3.4.3            |          | Started | cxf-3.4.3   
>              |
> pax-jetty               | 9.4.38.v20210224 |          | Started | 
> org.ops4j.pax.web-7.3.13 | Provide Jetty engine support
> pax-http-jetty          | 7.3.13           |          | Started | 
> org.ops4j.pax.web-7.3.13 |
> 
> I stripped down the list of boot features and found out that the http-feature 
> installs the two jetty versions.
> I read already this thread 
> http://karaf.922171.n3.nabble.com/Two-versions-of-jetty-td4055919.html 
> <http://karaf.922171.n3.nabble.com/Two-versions-of-jetty-td4055919.html>, but 
> think it it not releated to my problem.
>   
> Is this normal that two versions of Jetty are active?  
> 
> Here is the part of the log file that shows the exception:
> 
> 2021-04-23T09:18:50,199 | INFO  | features-3-thread-1 | FeaturesServiceImpl   
>            | 16 - org.apache.karaf.features.core - 4.3.1 |   
> org.eclipse.jetty.websocket.servlet&#x2F;9.4.38.v20210224
> 2021-04-23T09:18:50,199 | INFO  | features-3-thread-1 | FeaturesServiceImpl   
>            | 16 - org.apache.karaf.features.core - 4.3.1 |   
> org.eclipse.jetty.websocket.server&#x2F;9.2.21.v20170120
> 2021-04-23T09:18:50,199 | ERROR | features-3-thread-1 | Felix                 
>            | 3 - org.ops4j.pax.logging.pax-logging-api - 2.0.8 | Bundle 
> org.apache.aries.spifly.dynamic.bundle [44] EventDispatcher: Error during 
> dispatch. (java.lang.NoClassDefFoundError: 
> org&#x2F;eclipse&#x2F;jetty&#x2F;websocket&#x2F;common&#x2F;SessionListener)
> java.lang.NoClassDefFoundError: 
> org/eclipse/jetty/websocket/common/SessionListener
> at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_202]
> at java.lang.ClassLoader.defineClass(ClassLoader.java:763) ~[?:1.8.0_202]
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2312)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClassParallel(BundleWiringImpl.java:2130)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2064)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1533)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:78)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1950)
>  ~[?:?]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_202]
> at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:2089) ~[?:?]
> at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:978) ~[?:?]
> at 
> org.apache.aries.spifly.ProviderBundleTrackerCustomizer.addingBundle(ProviderBundleTrackerCustomizer.java:143)
>  ~[?:?]
> at 
> org.apache.aries.spifly.ProviderBundleTrackerCustomizer.addingBundle(ProviderBundleTrackerCustomizer.java:64)
>  ~[?:?]
> at 
> org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:475)
>  ~[osgi.core-7.0.0.jar:?]
> at 
> org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:420)
>  ~[osgi.core-7.0.0.jar:?]
> at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) 
> ~[osgi.core-7.0.0.jar:?]
> at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) 
> ~[osgi.core-7.0.0.jar:?]
> at 
> org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:450)
>  ~[osgi.core-7.0.0.jar:?]
> at 
> org.apache.felix.framework.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:915)
>  ~[?:?]
> at 
> org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:834)
>  ~[?:?]
> at 
> org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:516)
>  ~[?:?]
> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4817) ~[?:?]
> at org.apache.felix.framework.Felix.activateBundle(Felix.java:2393) ~[?:?]
> at org.apache.felix.framework.Felix.startBundle(Felix.java:2308) ~[?:?]
> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998) ~[?:?]
> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984) ~[?:?]
> at 
> org.apache.karaf.features.internal.service.BundleInstallSupportImpl.startBundle(BundleInstallSupportImpl.java:165)
>  ~[?:?]
> at 
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1160)
>  ~[?:?]
> at 
> org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:1041)
>  ~[?:?]
> at 
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1069)
>  ~[?:?]
> at 
> org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:1004)
>  ~[?:?]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_202]
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>  [?:1.8.0_202]
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>  [?:1.8.0_202]
> at java.lang.Thread.run(Thread.java:748) [?:1.8.0_202]
> Caused by: java.lang.ClassNotFoundException: 
> org.eclipse.jetty.websocket.common.SessionListener not found by 
> org.eclipse.jetty.websocket.common [188]
> at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1565)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:78)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1950)
>  ~[?:?]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_202]
> at 
> org.apache.felix.framework.BundleWiringImpl.getClassByDelegation(BundleWiringImpl.java:1343)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl.searchImports(BundleWiringImpl.java:1586)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1516)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:78)
>  ~[?:?]
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1950)
>  ~[?:?]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_202]
> ... 35 more
> 
> Regards
> 
>   Richard

Reply via email to