Page always redirects to start with server push. Websocket closed.

I am trying to use Wilfly 9 RC with Vaadins Server Push. First I tested with our current Vaadin version 7.1.5. The Push worked but I got always following message in the firefox java script log:


Vaadin push loaded
vaadinPush.js:21 WebSocket connection to ‘ws://localhost:8080/abc-ui/PUSH/?v-uiId=0&v-csrfToken=9592bfe8-549f-4713-85b4-8ddae0163407&X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=2.0.3.vaadin2-jquery&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&X-Cache-Date=0&Content-Type=application/json;%20charset=UTF-8’ failed: Error during WebSocket handshake: Unexpected response code: 501
vaadinPush.js:21 Websocket failed. Downgrading to Comet and resending
I found this topic related here: http://atmosphere-framework.2306103.n4.nabble.com/Websocket-Connection-Fails-On-Wildfly-8-0-0-Beta1-td4656823.html

Because I thought, it could be a problem with Wildfly’s new web server engine Undertow, I opened a thread in the JBoss Jira: https://issues.jboss.org/browse/WFLY-4778
After updating my Vaadin version to 7.4.8 the Push does not work anymore and the web side is always redirected to the start page again. Now I get the following message in Firefox:

“Websocket closed, reason: The endpoint is going away, either because of a server failure or because the browser is navigating away from the page that opened the connection.” vaadinPush.js:25:141275
“Websocket closed, wasClean: true” vaadinPush.js:25:141275

Google Chrome prints:

“Websocket closed, reason: Normal closure; the connection successfully completed whatever purpose for which it was created.
vaadinPush.js?v=7.4.8:25 Websocket closed, wasClean: true”

Does anybody has a tip for me, what is going on in my application?

Have you set load-on-startup as 1 in the servlet parameters in your web.xml? Until Vaadin 7.5.0 is released, this is required to make Wildfly register the websocket endpoint correctly.

Yes, I have. My web.xml looks like the following:

<description>Vaadin integration: Main application servlet</description>
<servlet-name>vaadinServlet</servlet-name>
<servlet-class>de.abc.def.ui.SpringVaadinServlet</servlet-class>
<init-param>
  <description>Name of the Spring managed UI bean</description>
  <param-name>uiBeanName</param-name>
  <param-value>defUI</param-value>
</init-param>

<init-param>
  <param-name>widgetset</param-name>
  <param-value>de.abc.vaadin.widgets.gwt.MyWidgetSet</param-value>
</init-param>

<init-param>
  <param-name>org.atmosphere.cpr.broadcasterCacheClass</param-name>
  <param-value>org.atmosphere.cache.UUIDBroadcasterCache</param-value>
</init-param>

<!-- Enable server push -->
<init-param>
  <param-name>pushmode</param-name>
  <param-value>manual</param-value>
</init-param>

<async-supported>true</async-supported>

<load-on-startup>1</load-on-startup>

Is it possible at all to use Vaadin push with a web.xml configuration, or do I have to switch to servlet 3 annotation config?