Description
Hi,
after I changed some stuff to use the recent Karaf 4.1.0 I realized an error in my log (message is attached below).
The error has been cased by a bug in the "org.eclipse.jetty.websocket.server" bundle (SPI without no-arg
constructor).
The issue has already been reported upstream (https://github.com/eclipse/jetty.project/issues/1276).
The Pax Web version Karaf 4.1.0 is using 6.0.2 uses jetty-9.3.15.v20161220 which contains that bug.
The issue has been reported for Pax Web, too (https://ops4j1.jira.com/browse/PAXWEB-1065).
It has been resolved in the master branch and in the new 9.3 release
"9.3.16.v20170120" (https://github.com/eclipse/jetty.project/commit/a205fb3aae65f9cd6721def40bc5956b04bfa9e4) already.
2017-02-16 20:13:16,994 | ERROR | lixDispatchQueue | publisher | 12 - com.eclipsesource.jaxrs.publisher - 5.3.1.201602281253 | FrameworkEvent ERROR - com.eclipsesource.jaxrs.publisher org.osgi.framework.ServiceException: Service factory exception: Unable to instantiate class class org.eclipse.jetty.websocket.server.WebSocketServerFactory Does it have a public no-arg constructor? at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:352) [?:?] at org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:247) [?:?] at org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:344) [?:?] at org.apache.felix.framework.Felix.getService(Felix.java:3699) [?:?] at org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:470) [?:?] at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java:39) [12:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253] at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) [?:?] at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) [?:?] at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) [?:?] at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183) [?:?] at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:318) [?:?] at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261) [?:?] at com.eclipsesource.jaxrs.publisher.internal.Activator.openAllServiceTracker(Activator.java:91) [12:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253] at com.eclipsesource.jaxrs.publisher.internal.Activator.start(Activator.java:55) [12:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253] at org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:697) [?:?] at org.apache.felix.framework.Felix.activateBundle(Felix.java:2226) [?:?] at org.apache.felix.framework.Felix.startBundle(Felix.java:2144) [?:?] at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371) [?:?] at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] Caused by: java.lang.RuntimeException: Unable to instantiate class class org.eclipse.jetty.websocket.server.WebSocketServerFactory Does it have a public no-arg constructor? at org.apache.aries.spifly.ProviderServiceFactory.getService(ProviderServiceFactory.java:37) ~[?:?] at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:347) ~[?:?] ... 19 more Caused by: java.lang.InstantiationException: org.eclipse.jetty.websocket.server.WebSocketServerFactory at java.lang.Class.newInstance(Class.java:427) ~[?:?] at org.apache.aries.spifly.ProviderServiceFactory.getService(ProviderServiceFactory.java:35) ~[?:?] at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:347) ~[?:?] ... 19 more Caused by: java.lang.NoSuchMethodException: org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>() at java.lang.Class.getConstructor0(Class.java:3082) ~[?:?] at java.lang.Class.newInstance(Class.java:412) ~[?:?] at org.apache.aries.spifly.ProviderServiceFactory.getService(ProviderServiceFactory.java:35) ~[?:?] at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:347) ~[?:?] ... 19 more