Uploaded image for project: 'Karaf'
  1. Karaf
  2. KARAF-4990

Exception caused by Jetty Websocket server

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.1.0
    • 4.1.1
    • karaf
    • None

    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
      

      Attachments

        Activity

          People

            jbonofre Jean-Baptiste Onofré
            maggu2810 Markus Rathgeb
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: