Сценарий: веб-приложение Apache Wicket, запущенное на сервере Tomcat.Wicket: как синхронизировать запросы в сеансе
Пользователь открывает URL-адрес в браузере, сеанс создается, а простая веб-страница отображается в браузере, пользователь нажимает кнопку и Вызывается вызов AJAX. Приложение получает запрос и выполняет некоторые действия по подготовке ответа. В то же время пользователь или JavaScript в браузере вызывает другой вызов AJAX - этот второй запрос обрабатывается в другом потоке в приложении и потому, что большинство частей приложения зависят от сеанса и не являются потокобезопасными (поскольку один пользователь = один сеанс), исключение бросает.
Возможные решения:
делают все классы приложений потокобезопасной (очень дорого)
адаптировать графический интерфейс, так не одновременно курсирует два AJAX вызовов в одной сессии (не представляется возможным из-за характера графического пользовательского интерфейса браузера)
синхронизировать все запросы в одной сессии на калитке или уровне Tomcat (но как?)
другая практика или техника ???
Благодаря
Как вы уже упоминали, в конечном итоге это был параллельный доступ от обработки потока запроса и другого потока, который был запущен в другом ранее обработанном запросе. Wicket (I belive) действительно синхронизирует запросы с одной страницы. Спасибо. – mschayna