[
https://issues.apache.org/jira/browse/FELIX-6746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17939334#comment-17939334
]
Andreas Lemmer edited comment on FELIX-6746 at 3/28/25 10:04 PM:
-----------------------------------------------------------------
This does not work. With the fixed version (and the current 1.0.26), I get the
following exception.
This is especially bad that with the "fix", even the delayed manual
initialization doesn't work anymore.
{{jakarta.servlet.ServletException: java.lang.IllegalStateException:
WebSocketComponents has not been created}}
{{ at
org.eclipse.jetty.ee10.websocket.server.JettyWebSocketServlet.init(JettyWebSocketServlet.java:178)}}
{{ at jakarta.servlet.GenericServlet.init(GenericServlet.java:178)}}
{{ at jakarta.servlet.http.HttpServlet.init(HttpServlet.java:107)}}
{{ at
org.apache.felix.http.base.internal.handler.ServletHandler.init(ServletHandler.java:178)}}
{{ at
org.apache.felix.http.base.internal.handler.WhiteboardServletHandler.init(WhiteboardServletHandler.java:108)}}
{{ at
org.apache.felix.http.base.internal.handler.WhiteboardWebSocketServletHandler.init(WhiteboardWebSocketServletHandler.java:57)}}
{{ at
org.apache.felix.http.base.internal.handler.WebSocketHandler.lazyInit(WebSocketHandler.java:48)}}
{{ at
org.apache.felix.http.base.internal.handler.WhiteboardWebSocketServletHandler.handle(WhiteboardWebSocketServletHandler.java:65)}}
{{ at
org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:86)}}
{{ at
org.apache.felix.http.base.internal.dispatch.Dispatcher$1.doFilter(Dispatcher.java:167)}}
{{ at
org.apache.felix.http.base.internal.whiteboard.WhiteboardManager.invokePreprocessors(WhiteboardManager.java:967)}}
{{ at
org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:95)}}
{{ at
org.apache.felix.http.base.internal.dispatch.DispatcherServlet.service(DispatcherServlet.java:49)}}
{{ at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1621)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1554)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:819)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:436)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:469)}}
{{ at
org.eclipse.jetty.ee10.servlet.SessionHandler.handle(SessionHandler.java:717)}}
{{ at
org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1064)}}
{{ at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:151)}}
{{ at org.eclipse.jetty.server.Server.handle(Server.java:182)}}
{{ at
org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:662)}}
{{ at
org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:416)}}
{{ at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)}}
{{ at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)}}
{{ at
org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:480)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:443)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.produce(AdaptiveExecutionStrategy.java:195)}}
{{ at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)}}
{{ at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)}}
{{ at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)}}
{{ at java.base/java.lang.Thread.run(Thread.java:840)}}
{{Caused by: java.lang.IllegalStateException: WebSocketComponents has not been
created}}
{{ at
org.eclipse.jetty.websocket.core.server.WebSocketServerComponents.getWebSocketComponents(WebSocketServerComponents.java:173)}}
{{ at
org.eclipse.jetty.websocket.core.server.WebSocketServerComponents.getWebSocketComponents(WebSocketServerComponents.java:161)}}
{{ at
org.eclipse.jetty.ee10.websocket.server.JettyWebSocketServlet.init(JettyWebSocketServlet.java:135)}}
{{ ... 36 more}}
was (Author: alemmer):
This does not work. With the fixed version (and the current 1.0.26), I get the
following exception.
This is especially bad that with the "fix", even the delayed manual
initialization doesn't work anymore.
{{jakarta.servlet.ServletException: java.lang.IllegalStateException:
WebSocketComponents has not been created}}
{{ at
org.eclipse.jetty.ee10.websocket.server.JettyWebSocketServlet.init(JettyWebSocketServlet.java:178)}}
{{ at jakarta.servlet.GenericServlet.init(GenericServlet.java:178)}}
{{ at jakarta.servlet.http.HttpServlet.init(HttpServlet.java:107)}}
{{ at
org.apache.felix.http.base.internal.handler.ServletHandler.init(ServletHandler.java:178)}}
{{ at
org.apache.felix.http.base.internal.handler.WhiteboardServletHandler.init(WhiteboardServletHandler.java:108)}}
{{ at
org.apache.felix.http.base.internal.handler.WhiteboardWebSocketServletHandler.init(WhiteboardWebSocketServletHandler.java:57)}}
{{ at
org.apache.felix.http.base.internal.handler.WebSocketHandler.lazyInit(WebSocketHandler.java:48)}}
{{ at
org.apache.felix.http.base.internal.handler.WhiteboardWebSocketServletHandler.handle(WhiteboardWebSocketServletHandler.java:65)}}
{{ at
org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:86)}}
{{zeuslocaltms | at
org.apache.felix.http.base.internal.dispatch.Dispatcher$1.doFilter(Dispatcher.java:167)}}
{{ at
org.apache.felix.http.base.internal.whiteboard.WhiteboardManager.invokePreprocessors(WhiteboardManager.java:967)}}
{{ at
org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:95)}}
{{ at
org.apache.felix.http.base.internal.dispatch.DispatcherServlet.service(DispatcherServlet.java:49)}}
{{ at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHolder.handle(ServletHolder.java:736)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1621)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHandler$MappedServlet.handle(ServletHandler.java:1554)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletChannel.dispatch(ServletChannel.java:819)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletChannel.handle(ServletChannel.java:436)}}
{{ at
org.eclipse.jetty.ee10.servlet.ServletHandler.handle(ServletHandler.java:469)}}
{{ at
org.eclipse.jetty.ee10.servlet.SessionHandler.handle(SessionHandler.java:717)}}
{{ at
org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1064)}}
{{ at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:151)}}
{{ at org.eclipse.jetty.server.Server.handle(Server.java:182)}}
{{ at
org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:662)}}
{{ at
org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:416)}}
{{ at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)}}
{{ at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)}}
{{ at
org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:480)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:443)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)}}
{{ at
org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.produce(AdaptiveExecutionStrategy.java:195)}}
{{ at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:979)}}
{{ at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1209)}}
{{ at
org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1164)}}
{{ at java.base/java.lang.Thread.run(Thread.java:840)}}
{{zeuslocaltms | Caused by: java.lang.IllegalStateException:
WebSocketComponents has not been created}}
{{ at
org.eclipse.jetty.websocket.core.server.WebSocketServerComponents.getWebSocketComponents(WebSocketServerComponents.java:173)}}
{{ at
org.eclipse.jetty.websocket.core.server.WebSocketServerComponents.getWebSocketComponents(WebSocketServerComponents.java:161)}}
{{ at
org.eclipse.jetty.ee10.websocket.server.JettyWebSocketServlet.init(JettyWebSocketServlet.java:135)}}
{{ ... 36 more}}
> JettyWebSocketServlet: Error during calling init()
> --------------------------------------------------
>
> Key: FELIX-6746
> URL: https://issues.apache.org/jira/browse/FELIX-6746
> Project: Felix
> Issue Type: Bug
> Components: HTTP Service
> Affects Versions: http.jetty12-1.0.19
> Reporter: Andreas Lemmer
> Assignee: Paul Rütter
> Priority: Major
> Fix For: http.jetty12-1.0.20, http.base-5.1.10
>
>
> Bundle {{http.jetty12-1.0.19-with-jetty-websockets}}
> When registering a {{new
> org.apache.felix.http.javaxwrappers.ServletWrapper.ServletWrapper(new
> JettyWebSocketServlet())}} at the {{HttpService}}, there is an Exception:
> {{SEVERE 0 [org.apache.felix.http] Error during calling init() on servlet
> (JettyWebSocketServlet-class)}}
> {{ jakarta.servlet.ServletException: java.lang.NullPointerException: Cannot
> invoke "org.eclipse.jetty.server.handler.ContextHandler.getContext()" because
> "contextHandler" is null}}
> {{ at
> org.eclipse.jetty.ee10.websocket.server.JettyWebSocketServlet.init(JettyWebSocketServlet.java:178)}}
> {{ at jakarta.servlet.GenericServlet.init(GenericServlet.java:178)}}
> {{ at jakarta.servlet.http.HttpServlet.init(HttpServlet.java:107)}}
> {{ at
> org.apache.felix.http.base.internal.handler.ServletHandler.init(ServletHandler.java:178)}}
> {{ at
> org.apache.felix.http.base.internal.registry.ServletRegistry.tryToActivate(ServletRegistry.java:395)}}
> {{ at
> org.apache.felix.http.base.internal.registry.ServletRegistry.addServlet(ServletRegistry.java:163)}}
> {{ at
> org.apache.felix.http.base.internal.registry.PerContextHandlerRegistry.registerServlet(PerContextHandlerRegistry.java:217)}}
> {{ at
> org.apache.felix.http.base.internal.service.SharedHttpServiceImpl.registerServlet(SharedHttpServiceImpl.java:78)}}
> {{ at
> org.apache.felix.http.base.internal.service.PerBundleHttpServiceImpl.registerServlet(PerBundleHttpServiceImpl.java:163)}}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)