Push technologies is an area of interest to me. I have been looking into frameworks, servers and libraries such as Atmosphere, ADF ADS, CometD 2, Kaazing, jWebSockets, Grizzly and others. In my experience, even though there is a lot of information to be found through Google, it is not simple to quickly gain a good understanding of what all these frameworks do. Part of the challenge is that articles written less than two years ago can already be completely outdated because of the rapid evolution of the software and even the concepts behind them. A striking example is the quick series of changes that the WebSocket specification underwent, leaving servers and clients gasping for breath in its wake, as well as a diverse series of non-compatible implementations of the various stages of the specification.
Other challenges include the lack of explanation of the inner workings of samples and the core of the framework (assuming existing knowledge that I frequently do not have), the sparse instructions when it comes to installation and configuration, the lack of originality in terms of examples (Echo Server, Chat application), the limited documentation – not seldomly out of date with the latest state of the software and the poorly moderated forums.
The very least I want to do in order to starting evaluating any technology is to get something running. And that is where at least there seems to be a convergence in approaches. Maven is at the heart for installing and running samples for most frameworks these days, sometimes complemented with Git to download the sources in the first place.
This article very briefly demonstrates the steps for getting some of the CometD 2 samples up running on my local machine.
First, download a recent distribution for CometD 2, from its download site http://download.cometd.org/.
