Matt Pavlovich created AMQ-9162:
-----------------------------------

             Summary: web socket transport throws exception after being stopped 
via jmx
                 Key: AMQ-9162
                 URL: https://issues.apache.org/jira/browse/AMQ-9162
             Project: ActiveMQ
          Issue Type: Bug
    Affects Versions: 5.18.0
            Reporter: Matt Pavlovich


1. Start broker
2. Stop wss transport via JMX
3. Attempt to start wss transport via JMX
4. Observe exception

{noformat}
java.lang.RuntimeException: Unable to load 
org.eclipse.jetty.websocket.server.WebSocketServerFactory
        at 
org.eclipse.jetty.websocket.servlet.WebSocketServletFactory$Loader.load(WebSocketServletFactory.java:54)
 ~[websocket-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.websocket.servlet.WebSocketServlet.init(WebSocketServlet.java:140)
 ~[websocket-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.apache.activemq.transport.ws.jetty9.WSServlet.init(WSServlet.java:79) 
~[activemq-http-5.18.0-SNAPSHOT.jar:5.18.0-SNAPSHOT]
        at javax.servlet.GenericServlet.init(GenericServlet.java:158) 
~[tomcat-servlet-api-9.0.65.jar:4.0.FR]
        at 
org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:632) 
~[jetty-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHolder.java:415) 
~[jetty-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.servlet.ServletHandler.lambda$initialize$0(ServletHandler.java:750)
 ~[jetty-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
java.util.stream.SortedOps$SizedRefSortingSink.end(SortedOps.java:357) ~[?:?]
        at 
java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:485) ~[?:?]
        at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) 
~[?:?]
        at 
java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining(StreamSpliterators.java:312)
 ~[?:?]
        at 
java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735) 
~[?:?]
        at 
java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658) 
~[?:?]
        at 
org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:774) 
~[jetty-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:379)
 ~[jetty-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:916)
 ~[jetty-server-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:288)
 ~[jetty-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
 ~[jetty-util-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
 ~[jetty-util-9.4.48.v20220622.jar:9.4.48.v20220622]
        at org.eclipse.jetty.server.Server.start(Server.java:423) 
~[jetty-server-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
 ~[jetty-util-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
 ~[jetty-server-9.4.48.v20220622.jar:9.4.48.v20220622]
        at org.eclipse.jetty.server.Server.doStart(Server.java:387) 
~[jetty-server-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
 ~[jetty-util-9.4.48.v20220622.jar:9.4.48.v20220622]
        at 
org.apache.activemq.transport.ws.WSTransportServer.doStart(WSTransportServer.java:99)
 ~[activemq-http-5.18.0-SNAPSHOT.jar:5.18.0-SNAPSHOT]
        at 
org.apache.activemq.util.ServiceSupport.start(ServiceSupport.java:55) 
~[activemq-client-5.18.0-SNAPSHOT.jar:5.18.0-SNAPSHOT]
        at 
org.apache.activemq.broker.TransportConnector.start(TransportConnector.java:266)
 ~[activemq-broker-5.18.0-SNAPSHOT.jar:5.18.0-SNAPSHOT]
        at 
org.apache.activemq.broker.jmx.ConnectorView.start(ConnectorView.java:32) 
~[activemq-broker-5.18.0-SNAPSHOT.jar:5.18.0-SNAPSHOT]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[?:?]
        at 
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 ~[?:?]
        at 
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:71) ~[?:?]
        at jdk.internal.reflect.GeneratedMethodAccessor27.invoke(Unknown 
Source) ~[?:?]
        at 
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:260) ~[?:?]
        at 
com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:112)
 ~[?:?]
        at 
com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:46)
 ~[?:?]
        at 
com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237) 
~[?:?]
        at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138) 
~[?:?]
        at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252) 
~[?:?]
        at javax.management.StandardMBean.invoke(StandardMBean.java:405) ~[?:?]
        at 
org.apache.activemq.broker.jmx.AnnotatedMBean.invoke(AnnotatedMBean.java:246) 
~[activemq-broker-5.18.0-SNAPSHOT.jar:5.18.0-SNAPSHOT]
        at 
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:809)
 ~[?:?]
        at 
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801) ~[?:?]
        at 
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1466)
 ~[?:?]
        at 
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1307)
 ~[?:?]
        at 
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1399)
 ~[?:?]
        at 
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:827)
 ~[?:?]
        at jdk.internal.reflect.GeneratedMethodAccessor35.invoke(Unknown 
Source) ~[?:?]
        at 
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:359) 
~[?:?]
        at sun.rmi.transport.Transport$1.run(Transport.java:200) ~[?:?]
        at sun.rmi.transport.Transport$1.run(Transport.java:197) ~[?:?]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
        at sun.rmi.transport.Transport.serviceCall(Transport.java:196) ~[?:?]
        at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:562) ~[?:?]
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:796)
 ~[?:?]
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:677)
 ~[?:?]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
        at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:676) 
~[?:?]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) 
~[?:?]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 
~[?:?]
        at java.lang.Thread.run(Thread.java:834) ~[?:?]
Caused by: java.lang.ClassNotFoundException: 
org.eclipse.jetty.websocket.server.WebSocketServerFactory
        at 
jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581) 
~[?:?]
        at 
jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
 ~[?:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]
        at java.lang.Class.forName0(Native Method) ~[?:?]
        at java.lang.Class.forName(Class.java:398) ~[?:?]
        at 
org.eclipse.jetty.websocket.servlet.WebSocketServletFactory$Loader.load(WebSocketServletFactory.java:48)
 ~[websocket-servlet-9.4.48.v20220622.jar:9.4.48.v20220622]
        ... 65 more
{noformat}




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to