We have build an implementation of websockets in Apache Camel. In combination with the strengths of Apache Camel you can push events from all given components (file, ftp, hazelcast, queue, etc.) to your browser. This offers great possibilities e.g. in process tracking, process driven forms and others.
It is fully bidirectional (in contrast to the AHC-component) and can therefore be used for producers and consumers.
To get a better idea of what has been done so far, please have a look at: