fdimuccio / play2-sockjs

A SockJS server implementation for Play Framework.
Apache License 2.0
62 stars 11 forks source link

Details concerning failed xhr_tests? #17

Closed cerst closed 8 years ago

cerst commented 8 years ago

Could someone elaborate on the reasons why the two mentioned xhr tests fail (test_abort_xhr_streaming and test_abort_xhr_polling)?

Is it caused by Netty not detecting that the connection has been closed or is it directly related to the implementation of play2-sockjs?

fdimuccio commented 8 years ago

Hi, the problem isn't within netty (it works fine) but in how Play Iteratee work. When the client abort the connection the Iteratee doesn't detect it until data is pushed to it. This cause the test to fail because according to it the sockjs session is not yet closed (it will be as soon as the heartbeat signal or any data will be emitted).

With Play 2.5, that is based on akka-stream, this is not true anymore and those tests pass as expected, you can try using the 0.5.0-SNAPSHOT. The only tests that don't pass are the one relative to WebSocket Hixie-76 protocol and I have to do further investigations before reporting the bug to the Play developers.