Итак, в приложении используется Vaadin 7. Во время логина идентификатор пользователя сохраняется в куки, откуда потом извлекается путем VaadinService.getCurrentRequest(). Если покопаться в исходниках ваадина (или применить логику, на выбор), становится ясно, что Request этот ThreadLocal.
А теперь ближе к сути: в EventBus постится ивент, после чего хендлер должен его обработать в каждом из потоков приложения. Как я понял из спек, в Guava EventBus для этого используется AsyncEventBus, а хендлер помимо @Subscribe аннотируется еще и @AllowConcurrentEvents. Итак, постится ивент, хендлер для каждого потока его обрабатывает и вроде бы все замечательно, но нет. Хендлер запускается в потоке, который не имеет доступа к Request'у и соответственно не может получить куки, которые ему нужны. Вся логика рушится, я агрессивно лысею в интимных местах и наступает полное уныние. Пока свой EventBus велосипедить не берусь, прошу совета.
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от f1xmAn
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от f1xmAn
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от f1xmAn
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум [pppoe] обработка событий (2011)
- Форум Ngins обработка событий (2022)
- Форум JavaScript, обработка «событий». (2009)
- Форум обработка событий IPTABLES (2003)
- Форум [tcl/tk] Обработка событий (2010)
- Форум [C]Множественная обработка событий (2012)
- Форум [python] Обработка событий мыши (2010)
- Форум Qt4: Обработка события перемещения (2010)
- Форум Обработка событий в FLTK (2004)
- Форум Обработка событий разных клавиатур/мышей (2016)