perwendel / spark

A simple expressive web framework for java. Spark has a kotlin DSL https://github.com/perwendel/spark-kotlin
Apache License 2.0
9.64k stars 1.56k forks source link

NPE during start of WebSocketServerFactory #984

Closed vogt31337 closed 6 years ago

vogt31337 commented 6 years ago

Hi,

I like Spark it's easy to use but WebSocket Tutorial does work, my implementation not. My bug seems to be a problem with jetty, which they fixed already: https://github.com/eclipse/jetty.project/issues/1603 (I quite don't understand why it happens... also because tutorial does work)

BUT Spark version 2.7.1 uses jetty-9.4.6.v20170531 which is before the bugfix. Could you update your internal jetty version to one with this commit? Or provide some Info on how to change / update the used version? Thanks a lot!

For reference stacktrace: SLF4J: Failed toString() invocation on an object of type [org.eclipse.jetty.websocket.server.WebSocketServerFactory] Reported exception: java.lang.NullPointerException at org.eclipse.jetty.websocket.server.WebSocketServerFactory.toString(WebSocketServerFactory.java:641) at org.slf4j.helpers.MessageFormatter.safeObjectAppend(MessageFormatter.java:299) at org.slf4j.helpers.MessageFormatter.deeplyAppendParameter(MessageFormatter.java:271) at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:233) at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:173) at org.eclipse.jetty.util.log.JettyAwareLogger.log(JettyAwareLogger.java:619) at org.eclipse.jetty.util.log.JettyAwareLogger.debug(JettyAwareLogger.java:206) at org.eclipse.jetty.util.log.Slf4jLog.debug(Slf4jLog.java:89) at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:322) at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:226) at org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>(WebSocketServerFactory.java:149) at org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>(WebSocketServerFactory.java:126) at org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>(WebSocketServerFactory.java:105) at org.eclipse.jetty.websocket.server.NativeWebSocketConfiguration.<init>(NativeWebSocketConfiguration.java:51) at org.eclipse.jetty.websocket.server.NativeWebSocketServletContainerInitializer.getDefaultFrom(NativeWebSocketServletContainerInitializer.java:36) at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.configureContext(WebSocketUpgradeFilter.java:69) at spark.embeddedserver.jetty.websocket.WebSocketServletContextHandlerFactory.create(WebSocketServletContextHandlerFactory.java:50) at spark.embeddedserver.jetty.EmbeddedJettyServer.ignite(EmbeddedJettyServer.java:123) at spark.Service.lambda$init$2(Service.java:496) at java.lang.Thread.run(Thread.java:748) SLF4J: Failed toString() invocation on an object of type [org.eclipse.jetty.websocket.server.WebSocketServerFactory] Reported exception: java.lang.NullPointerException at org.eclipse.jetty.websocket.server.WebSocketServerFactory.toString(WebSocketServerFactory.java:641) at org.slf4j.helpers.MessageFormatter.safeObjectAppend(MessageFormatter.java:299) at org.slf4j.helpers.MessageFormatter.deeplyAppendParameter(MessageFormatter.java:271) at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:233) at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:173) at org.eclipse.jetty.util.log.JettyAwareLogger.log(JettyAwareLogger.java:619) at org.eclipse.jetty.util.log.JettyAwareLogger.debug(JettyAwareLogger.java:206) at org.eclipse.jetty.util.log.Slf4jLog.debug(Slf4jLog.java:89) at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:322) at org.eclipse.jetty.util.component.ContainerLifeCycle.addBean(ContainerLifeCycle.java:229) at org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>(WebSocketServerFactory.java:150) at org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>(WebSocketServerFactory.java:126) at org.eclipse.jetty.websocket.server.WebSocketServerFactory.<init>(WebSocketServerFactory.java:105) at org.eclipse.jetty.websocket.server.NativeWebSocketConfiguration.<init>(NativeWebSocketConfiguration.java:51) at org.eclipse.jetty.websocket.server.NativeWebSocketServletContainerInitializer.getDefaultFrom(NativeWebSocketServletContainerInitializer.java:36) at org.eclipse.jetty.websocket.server.WebSocketUpgradeFilter.configureContext(WebSocketUpgradeFilter.java:69) at spark.embeddedserver.jetty.websocket.WebSocketServletContextHandlerFactory.create(WebSocketServletContextHandlerFactory.java:50) at spark.embeddedserver.jetty.EmbeddedJettyServer.ignite(EmbeddedJettyServer.java:123) at spark.Service.lambda$init$2(Service.java:496) at java.lang.Thread.run(Thread.java:748) 12:11:53.474 [Thread-2] INFO s.e.jetty.EmbeddedJettyServer - == Spark has ignited ... 12:11:53.475 [Thread-2] INFO s.e.jetty.EmbeddedJettyServer - >> Listening on 0.0.0.0:34120 12:11:53.482 [Thread-2] INFO org.eclipse.jetty.server.Server - jetty-9.4.6.v20170531

vogt31337 commented 6 years ago

Closed, becaused merg'd and fix'd.