https://bz.apache.org/bugzilla/show_bug.cgi?id=58223

            Bug ID: 58223
           Summary: WsSession.getOpenSessions breaks API contract
           Product: Tomcat 7
           Version: 7.0.63
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: WebSocket
          Assignee: dev@tomcat.apache.org
          Reporter: kajsa.ander...@gmail.com

Created attachment 32981
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=32981&action=edit
annotated WebSocket server demonstrating issue

Somewhere between 7.0.55 and 7.0.63, the behavior of WsSession.getOpenSessions
was broken in such a way that it now returns only the current session, not all
open sessions as specified by the API documents for javax.websocket.Session.

The attached tarball contains a minimal example that exhibits the issue, using
these steps:

 * mvn package to build the war (tomcat-ws-bug.war) 

Working behavior:

 * deploy war to Tomcat 7.0.55
 a) use Tomcat's examples/websocket/echo.xhtml to connect to
ws://<your-server>/tomcat-ws-bug/broadcast from more than one browser window
 * send a message, confirm that it's received in all connected browsers
 * verify that logs/catalina.out shows "<n> open sessions" for n = the number
of connected browsers

Broken behavior:

 * deploy war to Tomcat 7.0.63
 * repeat a) above
 * note that the message is only sent back to the sender, not to other
connected browsers
 * note that logs/catalina.out shows "1 open sessions", regardless of the
number of connected browsers

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to