Real error: CWWKH0049E: After start of WebSocket-Application no further Web

Hi,
I am currently experiencing a Push problem when running Vaadin in WebSphere Liberty.

Versions:
Vaadin: 8.6.4

Spring: 4.3.3.RELEASE
Spring-Boot 1.4.1
WebSphere Liberty: 18.0.0.4

This set of Versions ran without any problem on WildFly 10. But since I am now moving to WLP, I am receiving the problem on any Push Configuration (WebSocket, WebSocket_XHR, LongPolling). The Application is starting up normally and fully working except for Push.

Once I open the application in the browser, I get the errors listed at the bottom. I already tried overriding the vaadinSpringServlet in the web.xml in order to activate the Push as well as having the @Push annotation on the UI Class. In both cases, I still get teh error.

Doese someone know about this problem and can give me a hint how to resolve this situation? I am totally lost :frowning:

Any help appreciated.

Thanks,
Alex

21:56:41.936 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereHandler com.vaadin.server.communication.PushAtmosphereHandler mapped to context-path: /*
21:56:41.936 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed the following AtmosphereInterceptor mapped to AtmosphereHandler com.vaadin.server.communication.PushAtmosphereHandler
21:56:41.996 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Atmosphere is using org.atmosphere.util.VoidAnnotationProcessor for processing annotation
21:56:42.012 [Default Executor-thread-421]
 INFO  org.atmosphere.util.ForkJoinPool - Using ForkJoinPool  java.util.concurrent.ForkJoinPool. Set the org.atmosphere.cpr.broadcaster.maxAsyncWriteThreads to -1 to fully use its power.
21:56:42.022 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed WebSocketProtocol org.atmosphere.websocket.protocol.SimpleHttpProtocol 
21:56:42.029 [Default Executor-thread-421]
 WARN  org.atmosphere.util.IOUtils - More than one Servlet Mapping defined. WebSocket may not work Servlet->com.vaadin.spring.server.SpringVaadinServlet
	getClassName->com.vaadin.spring.server.SpringVaadinServlet
	getName->springVaadinServlet
	mapping->/vaadinServlet/*
	mapping->/VAADIN/*
	loadOnStartupWeight->-1
	getInitParameters->(heartbeatInterval,300)(productionMode,false)(closeIdleSessions,false)(resourceCacheTime,3600)
getInitParameter(heartbeatInterval,300)
getInitParameter(productionMode,false)
getInitParameter(closeIdleSessions,false)
getInitParameter(resourceCacheTime,3600)
isAsyncSupported->true
getDescription->null

21:56:42.030 [Default Executor-thread-421]
 INFO  org.atmosphere.container.JSR356AsyncSupport - JSR 356 Mapping path /vaadinServlet
21:56:42.033 [Default Executor-thread-421]
 WARN  org.atmosphere.cpr.DefaultAsyncSupportResolver - Failed to create AsyncSupport class: class org.atmosphere.container.JSR356AsyncSupport, error: java.lang.reflect.InvocationTargetException
21:56:42.035 [Default Executor-thread-421]
 ERROR org.atmosphere.cpr.DefaultAsyncSupportResolver - Real error: CWWKH0049E: Nach dem Start der WebSocket-Anwendung können keine weiteren WebSocket-Endpunkte hinzugefügt werden.
java.lang.IllegalStateException: CWWKH0049E: Nach dem Start der WebSocket-Anwendung können keine weiteren WebSocket-Endpunkte hinzugefügt werden.
	at com.ibm.ws.wsoc.external.ServerContainerExt.addEndpoint(ServerContainerExt.java:99)
	at org.atmosphere.container.JSR356AsyncSupport.<init>(JSR356AsyncSupport.java:99)
	at org.atmosphere.container.JSR356AsyncSupport.<init>(JSR356AsyncSupport.java:42)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.atmosphere.cpr.DefaultAsyncSupportResolver.newCometSupport(DefaultAsyncSupportResolver.java:237)
	at org.atmosphere.cpr.DefaultAsyncSupportResolver.resolveWebSocket(DefaultAsyncSupportResolver.java:308)
	at org.atmosphere.cpr.DefaultAsyncSupportResolver.resolve(DefaultAsyncSupportResolver.java:294)
	at org.atmosphere.cpr.AtmosphereFramework.autoDetectContainer(AtmosphereFramework.java:2092)
	at org.atmosphere.cpr.AtmosphereFramework.init(AtmosphereFramework.java:914)
	at org.atmosphere.cpr.AtmosphereFramework.init(AtmosphereFramework.java:838)
	at com.vaadin.server.communication.PushRequestHandler.initAtmosphere(PushRequestHandler.java:206)
	at com.vaadin.server.communication.PushRequestHandler.<init>(PushRequestHandler.java:79)
	at com.vaadin.server.VaadinServletService.createRequestHandlers(VaadinServletService.java:68)
	at com.vaadin.spring.server.SpringVaadinServletService.createRequestHandlers(SpringVaadinServletService.java:59)
	at com.vaadin.server.VaadinService.init(VaadinService.java:216)
	at com.vaadin.spring.server.SpringVaadinServlet.createServletService(SpringVaadinServlet.java:151)
	at com.vaadin.server.VaadinServlet.createServletService(VaadinServlet.java:377)
	at com.vaadin.server.VaadinServlet.init(VaadinServlet.java:207)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:297)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:598)
	at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:440)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.invokeTarget(WebAppFilterChain.java:182)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:93)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
	at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:89)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
	at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
	at org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:119)
	at org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61)
	at org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:94)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	at org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)
	at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:201)
	at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:90)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:996)
	at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1134)
	at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:4954)
	at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.handleRequest(DynamicVirtualHost.java:314)
	at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:996)
	at com.ibm.ws.webcontainer.osgi.DynamicVirtualHost$2.run(DynamicVirtualHost.java:279)
	at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink$TaskWrapper.run(HttpDispatcherLink.java:1023)
	at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink.wrapHandlerAndExecute(HttpDispatcherLink.java:417)
	at com.ibm.ws.http.dispatcher.internal.channel.HttpDispatcherLink.ready(HttpDispatcherLink.java:376)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:532)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.handleNewRequest(HttpInboundLink.java:466)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.processRequest(HttpInboundLink.java:331)
	at com.ibm.ws.http.channel.internal.inbound.HttpInboundLink.ready(HttpInboundLink.java:302)
	at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:165)
	at com.ibm.ws.tcpchannel.internal.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:74)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager.requestComplete(WorkQueueManager.java:501)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager.attemptIO(WorkQueueManager.java:571)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager.workerRun(WorkQueueManager.java:926)
	at com.ibm.ws.tcpchannel.internal.WorkQueueManager$Worker.run(WorkQueueManager.java:1015)
	at com.ibm.ws.threading.internal.ExecutorServiceImpl$RunnableWrapper.run(ExecutorServiceImpl.java:232)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
21:56:42.046 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installing Default AtmosphereInterceptors
21:56:42.047 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.CorsInterceptor : CORS Interceptor Support
21:56:42.048 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.CacheHeadersInterceptor : Default Response's Headers Interceptor
21:56:42.050 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.PaddingAtmosphereInterceptor : Browser Padding Interceptor Support
21:56:42.051 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.AndroidAtmosphereInterceptor : Android Interceptor Support
21:56:42.054 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.HeartbeatInterceptor : Heartbeat Interceptor Support
21:56:42.056 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.SSEAtmosphereInterceptor : SSE Interceptor Support
21:56:42.057 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.JSONPAtmosphereInterceptor : JSONP Interceptor Support
21:56:42.061 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.JavaScriptProtocol : Atmosphere JavaScript Protocol
21:56:42.062 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.WebSocketMessageSuspendInterceptor : org.atmosphere.interceptor.WebSocketMessageSuspendInterceptor
21:56:42.063 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.OnDisconnectInterceptor : Browser disconnection detection
21:56:42.065 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - 	org.atmosphere.interceptor.IdleResourceInterceptor : org.atmosphere.interceptor.IdleResourceInterceptor
21:56:42.065 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Set org.atmosphere.cpr.AtmosphereInterceptor.disableDefaults to disable them.
21:56:42.066 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor CORS Interceptor Support with priority FIRST_BEFORE_DEFAULT 
21:56:42.067 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor Default Response's Headers Interceptor with priority AFTER_DEFAULT 
21:56:42.068 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor Browser Padding Interceptor Support with priority AFTER_DEFAULT 
21:56:42.069 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor Android Interceptor Support with priority AFTER_DEFAULT 
21:56:42.070 [Default Executor-thread-421]
 INFO  org.atmosphere.interceptor.HeartbeatInterceptor - HeartbeatInterceptor configured with padding value 'X', client frequency 60 seconds and server frequency 0 seconds
21:56:42.071 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor Heartbeat Interceptor Support with priority AFTER_DEFAULT 
21:56:42.071 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor SSE Interceptor Support with priority AFTER_DEFAULT 
21:56:42.072 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor JSONP Interceptor Support with priority AFTER_DEFAULT 
21:56:42.073 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor Atmosphere JavaScript Protocol with priority AFTER_DEFAULT 
21:56:42.073 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor org.atmosphere.interceptor.WebSocketMessageSuspendInterceptor with priority AFTER_DEFAULT 
21:56:42.073 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor Browser disconnection detection with priority AFTER_DEFAULT 
21:56:42.074 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor org.atmosphere.interceptor.IdleResourceInterceptor with priority BEFORE_DEFAULT 
21:56:42.074 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Using EndpointMapper class org.atmosphere.util.DefaultEndpointMapper
21:56:42.075 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Using BroadcasterCache: org.atmosphere.cache.UUIDBroadcasterCache
21:56:42.075 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Default Broadcaster Class: org.atmosphere.cpr.DefaultBroadcaster
21:56:42.076 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Broadcaster Shared List Resources: false
21:56:42.076 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Broadcaster Polling Wait Time 100
21:56:42.076 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Shared ExecutorService supported: true
21:56:42.077 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Messaging ExecutorService Pool Size unavailable - Not instance of ThreadPoolExecutor
21:56:42.077 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Async I/O Thread Pool Size: 200
21:56:42.078 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Using BroadcasterFactory: org.atmosphere.cpr.DefaultBroadcasterFactory
21:56:42.078 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Using AtmosphereResurceFactory: org.atmosphere.cpr.DefaultAtmosphereResourceFactory
21:56:42.078 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Using WebSocketProcessor: org.atmosphere.websocket.DefaultWebSocketProcessor
21:56:42.084 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Invoke AtmosphereInterceptor on WebSocket message true
21:56:42.085 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - HttpSession supported: true
21:56:42.085 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Atmosphere is using org.atmosphere.inject.InjectableObjectFactory for dependency injection and object creation
21:56:42.086 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Atmosphere is using async support: org.atmosphere.container.Servlet30CometSupport running under container: IBM WebSphere Liberty/18.0.0.4 using javax.servlet/3.0
21:56:42.086 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Atmosphere Framework 2.4.30.vaadin1 started.
21:56:42.091 [Default Executor-thread-421]
 INFO  org.atmosphere.cpr.AtmosphereFramework - Installed AtmosphereInterceptor  Track Message Size Interceptor using | with priority BEFORE_DEFAULT

Is really nobody having experienced this before or having any idea how to approach this? :frowning:

Your issue looks similar than the one reported here

https://github.com/vaadin/framework/issues/10922