I've tried the chatdemo of gwt-comet and gwteventservice so far. I personally prefer the gwteventservice more, but they both have the same problem: I have two tabs open in firefox: say with user ff1 and user ff2 and one tab in chrome say user chrome1. When I send an event from chrome1 for example a new message event, then only one of the users ff1 and ff2 will receive the message. This was tested using gwteventservice 1.2.0 and the latest source code 1.3.0 (20-6-2012), and gwt-comet 1.2.3
Another problem with the demos is that closing a tab/closing the browser isn't perceived by the server and that user seems logged in to the other users. The user only seems logged out by others when the logout button is pressed.
I'd prefer a solution using gwteventservice. My question is thus: how to manage multiple tabs using gwteventservice and logout users correctly in a chatapp?
# Generator for unique client ids
eventservice.connection.id.generator=de.novanic.eventservice.service.connection.id.SessionExtendedClientIdGenerator
more information can be found at: https://stackoverflow.com/a/5882001/1467482