[
https://issues.apache.org/jira/browse/AMQ-3955?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dejan Bosanac resolved AMQ-3955.
--------------------------------
Resolution: Fixed
Fixed with svn revision 1367915
Thanks to Christian Posta for patch.
> WebSocket Transport - Race condition starting transport
> -------------------------------------------------------
>
> Key: AMQ-3955
> URL: https://issues.apache.org/jira/browse/AMQ-3955
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.6.0
> Reporter: Dejan Bosanac
> Assignee: Dejan Bosanac
> Fix For: 5.7.0
>
>
> In the StompServlet, when a websocket request comes in, we are starting up
> the broker's websocket connection when we call listener.onAccept(socket).
> Under the covers, it begins a task in a new thread to create the connection,
> instantiate the transport listener, and set the listener on the transport.
> However, this is done asynchronously, and when the StompServlet calls
> listener.onAccept(socket), it immediately returns to the underlying jetty
> websockets implementation, returning the StompSocket (which as the websocket
> onTextMessage listener). It seems it's possible the jetty code could call
> back the onTextMessage listener's onMessage(...) method and expect the
> StompSocket to process the Stomp message before the steps taken to complete
> creating the connection from the async listener.onAccept(..) call.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira