Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-users] Using WebSockets in Equinox

The `Not running on Jetty, WebSocket support unavailable` is from the check here ...

https://github.com/eclipse/jetty.project/blob/jetty-9.3.7.v20160115/jetty-websocket/websocket-server/src/main/java/org/eclipse/jetty/websocket/server/WebSocketServerFactory.java#L375-L381

And ContextHandler.getContextHandler(context) is this code ...

https://github.com/eclipse/jetty.project/blob/jetty-9.3.7.v20160115/jetty-server/src/main/java/org/eclipse/jetty/server/handler/ContextHandler.java#L149-L157

Is there something special about OSGi which is getting in the way here? 

Joakim Erdfelt / joakim@xxxxxxxxxxx

On Mon, Mar 7, 2016 at 4:45 PM, Hallvard Trætteberg <hal@xxxxxxxxxxx> wrote:
Hi,

I’ve been using the WebSocket support of Jetty 8 within the Equinox OSGi framework for a while, but now have to upgrade to Jetty 9 and the newer API. Changing to using WebSocket annotations wasn’t difficult, but I have problems getting the system as a whole to run.

When developing, I install all the necessary Jetty bundles into Eclipse (the Neon M4), either install the Equinox target components or manually using the dropins folder. Then I launch a second Eclipse for testing. I managed to do this with Jetty 9.2.12, but ended up with class loading issues. I then upgraded to Jetty 9.3.5 only to get the message javax.servlet.ServletException: Not running on Jetty, WebSocket support unavailable.

According to http://www.eclipse.org/jetty/documentation/current/framework-jetty-osgi.html I should be able to get the Jetty container running with the Equinox container by using the org.eclipse.jetty.osgi.boot bundle. I add it to the dropins folder, but it never shows up in the Eclipse plugin view or can be selected as part of the plugins in the target or launch configuration for the runtime Eclipse instance. I’ve tried looking for it using the OSGi console, and all the other Jetty bundles show up, but not org.eclipse.jetty.osgi.boot. It’s fairly common to se a bundle hasn’t resolved or started, e.g. when a dependency isn’t satisfied, but this bundle doesn’t seem to be installed, even though it’s in the dropins folder, with the other Jetty WebSocket bundles. And I still get the "Not running on Jetty, WebSocket support unavailable” message.

I know I can revert to using the plain OSGi HttpService and using simple requests, but WebSockets should improve the performance, so I’d rather use them.

Any suggestions?

Regards,

Hallvard Trætteberg
---
Hallvard Trætteberg (hal@xxxxxxxxxxx)
Associate Professor, IS group, Dept. of Computer and Information Science at the
Norwegian Univ. of Science and Technology




_______________________________________________
jetty-users mailing list
jetty-users@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jetty-users


Back to the top