Крестики-нолики для двух пользователей с использованием JSF

Я пытаюсь написать крестики-нолики для двух пользователей, используя технологию JSF. Из книг и учебных пособий, которые я прочитал, я понимаю, как работает JSF и как написать веб-приложение для одного пользователя, скажем, конвертер Цельсия в Фаренгейт или что-то в этом роде.

Чего я нигде не могу найти, так это как реализовать приложение таким образом, чтобы два пользователя (на разных компьютерах) могли на самом деле быть связаны друг с другом и играть в крестики-нолики друг с другом. Поэтому я думаю, что мне как-то нужно предоставить доступ к определенному Бину для этих двух пользователей, аутентифицированному через логин, но тогда сам Бин должен был бы знать, какой пользователь предпринимает какие-либо действия, чтобы игра могла иметь ходы.

Есть какой-нибудь известный способ, как реализовать что-то подобное? Может ли кто-нибудь указать мне учебник или что-то на эту тему?

1 ответ

Решение

Вы ищете AJAX толчок. Стандартная библиотека компонентов JSF не поддерживает ее "из коробки", потому что реализация на данный момент зависит от servletcontainer, а JSF разработана как независимая от servletcontainer. Будущая спецификация Servlet 3.1 (часть Java EE 7) представит поддержку веб-сокетов, которая, таким образом, обеспечивает стандартизированные возможности push. Будущий JSF 3.0, скорее всего, поддержит его.

На данный момент, среди прочего, JSF библиотека компонентов PrimeFaces имеет <p:push> компонент (нажмите на ссылку, чтобы увидеть примеры в реальном времени), который использует сервлет-контейнер Jetty под крышками. Детали установки <p:push> описаны в главе 6 Руководства пользователя PrimeFaces.

Просто поиграйте с примерами, представленными на сайте PrimeFaces, и вы получите представление о том, как реализовать это для своей идеи.

Другие вопросы по тегам