Ответ 1
Учебники CometD находятся здесь: http://docs.cometd.org/tutorials/.
CometD также поставляется с демо файлом войны, в котором есть встроенное приложение чата, которое вы можете использовать в качестве основы для понимания того, как работает CometD, см. http://docs.cometd.org/reference/installation.html.
Полная справочная документация CometD находится здесь: http://docs.cometd.org/.
Из опыта я не рекомендую использовать функции async для Servlet 3.0 для реализации чата, поскольку это исключает использование WebSocket.
Лучше вы полагаетесь на такие среды, как CometD, которые могут начинаться с WebSocket (как это более эффективно), а затем автоматически и прозрачно отбрасываться на HTTP, если WebSocket не работает.
Аналогичным образом я не рекомендую использовать только метод WebSocket, поскольку WebSocket не работает в определенных сценариях (например, мобильные сети часто не разрешают трафик WebSocket), и это слишком низкоуровневый протокол, поэтому вы будете должны создать собственный протокол поверх WebSocket (что очень много работы и нелегко получить).
CometD предоставляет вам простой в расширении протокол и автоматическую резервную передачу транспорта, а также имеет массу функций (например, авторизацию и аутентификацию и кластеризацию, чтобы упомянуть два).