Multi Windowing в веб-проекте Java - PullRequest
4 голосов
/ 02 марта 2012

У меня есть проект EJB 2.1 (на самом деле его нужно перенести в EJB 3.1 :-))
В настоящее время он поддерживает только одно окно. это означает, что пользователь должен работать с окном. Это из-за переменных, используемых в качестве переменных сеанса. (Критерии последнего поиска, последний использованный идентификатор и т. Д.).

Я хочу, чтобы можно было открыть две или более вкладок, например, в Firefox и работать параллельно. Если пользователь находится на той же вкладке, переменные должны храниться только для этой вкладки. Только глобальные переменные могут быть действительными для всех вкладок.
Как я могу подойти к этой проблеме .??
Любая документация для понимания многооконности также будет полезна.
Или любая другая идея или опыт в многооконном веб-проекте также приветствуется.

1 Ответ

1 голос
/ 02 марта 2012

Нет ни одного встроенного способа справиться с этим ни в браузерах, ни в любом EJB, о котором я знаю. Фреймворки других веб-приложений имеют концепцию веб-потоков, представляющих собой последовательность связанных действий, которые могут обрабатывать несколько потоков в разных вкладках одного и того же браузера, поэтому вы можете начать поиск там.

В двух словах, они создают свои собственные файлы cookie, которые контролирует приложение, а не сам браузер. Эти «cookie-файлы приложения» затем используются для хранения фрагментов информации, относящейся к текущему набору операций, так же как и сеанс.

Подобные вещи часто запускаются тем, что пользователь щелкает ссылку, которая открывается в «новом окне» (или вкладке), которая уведомляет приложение (через нажатие страницы или вызов ajax) о новом «рабочем сеансе» открывается и получает настройку внутреннего сеанса.

...