nathandeklepper opened a new issue, #2446:
URL: https://github.com/apache/activemq/issues/2446
Have tested this against 6.1.x where it works correctly.
On 6.3.x (and possibly 6.2.x) it fails with the exception pasted below.
Steps to reproduce...
Download activemq 6.3.1 tar.gz from amq classic downloads page.
Uncomment ws and stomp connectors in conf/activemq.xml
Connect with a ws/stomp client (should be reproducible with any protocol
over ws).
java.lang.NoClassDefFoundError:
org/eclipse/jetty/websocket/server/internal/CompletedUpgradeRequest
at
org.eclipse.jetty.ee11.websocket.server.internal.JettyServerFrameHandlerFactory.newFrameHandler(JettyServerFrameHandlerFactory.java:45)
at
org.eclipse.jetty.websocket.core.server.internal.CreatorNegotiator.negotiate(CreatorNegotiator.java:70)
at
org.eclipse.jetty.websocket.core.server.internal.AbstractHandshaker.upgradeRequest(AbstractHandshaker.java:70)
at
org.eclipse.jetty.websocket.core.server.internal.HandshakerSelector.upgradeRequest(HandshakerSelector.java:45)
at
org.eclipse.jetty.websocket.core.server.WebSocketMappings.upgrade(WebSocketMappings.java:296)
at
org.eclipse.jetty.websocket.core.server.WebSocketMappings.upgrade(WebSocketMappings.java:264)
at
org.eclipse.jetty.ee11.websocket.server.JettyWebSocketServlet.service(JettyWebSocketServlet.java:210)
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:723)
at
org.eclipse.jetty.ee11.servlet.ServletHolder.handle(ServletHolder.java:754)
at
org.eclipse.jetty.ee11.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1688)
at
org.eclipse.jetty.ee11.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1602)
at
org.eclipse.jetty.ee11.servlet.ServletChannel.dispatch(ServletChannel.java:871)
at
org.eclipse.jetty.ee11.servlet.ServletChannel.handle(ServletChannel.java:449)
at
org.eclipse.jetty.ee11.servlet.ServletHandler.handle(ServletHandler.java:469)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:546)
at
org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1253)
at org.eclipse.jetty.server.Server.handle(Server.java:197)
at
org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:804)
at
org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:420)
at
org.eclipse.jetty.server.internal.HttpConnection$FillableCallback.succeeded(HttpConnection.java:1790)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105)
at
org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:54)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:1009)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1240)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1194)
at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.lang.ClassNotFoundException:
org.eclipse.jetty.websocket.server.internal.CompletedUpgradeRequest
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:592)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
I have Java / spring test client that logs the following output, I'm not
sure how helpful this will be though as I expect the issue is dependency
version related on the server...
15:39:10.210 [SimpleAsyncTaskExecutor-1] TRACE
o.s.w.s.c.s.StandardWebSocketClient - Handshake request headers:
{Connection=[Upgrade], Host=[localhost:61614], Origin=[http://localhost:61614],
Sec-WebSocket-Key=[OzVNARaLftY4WcJltC+eRA==],
Sec-WebSocket-Protocol=[v13.stomp, v12.stomp, v11.stomp, stomp],
Sec-WebSocket-Version=[13], Upgrade=[websocket]}
15:39:10.385 [Grizzly(1)] TRACE o.s.w.s.c.s.StandardWebSocketClient -
Handshake response headers: {cache-control=[must-revalidate, no-cache,
no-store], content-length=[613], content-type=[text/html;charset=iso-8859-1],
date=[Tue, 11 Aug 2026 05:39:10 GMT]}
15:39:10.386 [SimpleAsyncTaskExecutor-1] DEBUG
o.s.m.simp.stomp.DefaultStompSession - Failed to connect session
id=9b6992f9-a8c8-b6e0-30a0-f70ecdd553ca
java.util.concurrent.CompletionException:
org.glassfish.tyrus.client.exception.DeploymentHandshakeException: Handshake
error.
at
org.springframework.util.concurrent.FutureUtils.lambda$toSupplier$0(FutureUtils.java:78)
at
java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by:
org.glassfish.tyrus.client.exception.DeploymentHandshakeException: Handshake
error.
at
org.glassfish.tyrus.client.exception.Exceptions.deploymentException(Exceptions.java:38)
at
org.glassfish.tyrus.client.ClientManager$3$1.run(ClientManager.java:622)
at
org.glassfish.tyrus.client.ClientManager$3.run(ClientManager.java:657)
at
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at
org.glassfish.tyrus.client.ClientManager$SameThreadExecutorService.execute(ClientManager.java:810)
at
java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123)
at
org.glassfish.tyrus.client.ClientManager.connectToServer(ClientManager.java:460)
at
org.glassfish.tyrus.client.ClientManager.lambda$connectToServer$2(ClientManager.java:313)
at
org.glassfish.tyrus.client.ClientManager.tryCatchInterruptedExecutionEx(ClientManager.java:324)
at
org.glassfish.tyrus.client.ClientManager.connectToServer(ClientManager.java:313)
at
org.springframework.web.socket.client.standard.StandardWebSocketClient.lambda$executeInternal$0(StandardWebSocketClient.java:167)
at
org.springframework.util.concurrent.FutureUtils.lambda$toSupplier$0(FutureUtils.java:74)
... 2 common frames omitted
Caused by: org.glassfish.tyrus.core.HandshakeException: Response code was
not 101: 500.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact