This morning I committed basic support for websockets to the trunk.
It's located in modules/websockets and is more or less ready to be
played with. There are a few basic unit tests included. Probably the
most interesting is WebSocketFilterTest.testSimpleConversation. It's a
servlet-based approach in which the servlet is largely unaware of the
underlying websockets work. This works well enough, but it does impose
a slight burden on the servlet author. This attempted complete
transparency does lead to a little bit of awkwardness in use, however.
So now that it's working, we'll be doing some work on the API itself to
provide a cleaner way to register your components for use in a
websockets conversation. So please play with it and give some
feedback. We'd like to have a nice, clean API we can all live with so
if you have any input now's the time. I'll be looking over what
jeanfrancois has done with atmosphere and jetty to see how much we can
borrow. Any suggestions are completely welcome. I want this to be
useful and usable for someone other than myself. :)