-
Task
-
Resolution: Done
-
Minor
-
8.0.0.CR1
-
Compatibility/Configuration
My app is a .war file, deployed in $WFLY/standalone/deployments. It uses programmatic way (ServerApplicationConfig) to deploy web socket endpoint:
15:12:33,024 INFO [io.undertow.websockets.jsr] (MSC service thread 1-7) UT026005: Adding programmatic server endpoint class org.apache.wicket.protocol.ws.javax.WicketEndpoint for path /wicket/websocket
The configured ServerEndpointConfig uses custom Configurator to collect some data from the handshake request. More specifically I need the http session id.
javax.websocket.server.HandshakeRequest#getHttpSession() method has the following javadoc:
- @return the http session or
{@code null}
if either the websocket
- implementation is not part of a Java EE web container, or there is
- no HttpSession associated with the opening handshake request.
The HttpSession is bound before making the websocket request and I think the app is running in a Java EE web container, so handshkeRequest#getHttpSession() must not be null. But it is ...
Additionally I see that javax.websocket.server.HandshakeRequest#getParameterMap() seems to be not implemented too.
The websocket upgrade request has query string, and javax.websocket.server.HandshakeRequest#getQueryString() properly returns its value, but #getParameterMap() is empty.
I expect the map to contain the parsed parameters from the query string.