Потоковая безопасность бобов @FlowScoped
Я провел небольшой эксперимент с bean-компонентами @FlowScoped, цель которого, насколько я понимаю, состоит в том, чтобы упростить создание веб-приложений типа "мастера", постепенно накапливая данные на последовательности страниц, а затем, как только все данные будут готовы, записать это в постоянное хранилище (это всего лишь пример, конечно, ничто не мешает писать в постоянное хранилище на промежуточных этапах). Как я видел, вызовы к компоненту @FlowScoped не синхронизированы, и, таким образом, в принципе существует возможность повреждения данных, хранящихся в компоненте (путем двойной отправки или запуска любым другим способом двух почти одновременных HTTP-запросов, которые вызывают методы боба). Это в отличие от @ConversationScoped bean-компонентов, вызовы которых синхронизируются.
Меня удивляет то, что о бинах @SessionScoped я нашел несколько ссылок, которые говорят о необходимости синхронизировать доступ к бину @SessionScoped (или рекомендовать вообще не использовать их, кроме пользовательских данных, которые редко меняются), но я имею ничего подобного о бобах @FlowScoped не найдено.
Что считается тогда "лучшей практикой" для использования бинов @FlowScoped? Я что-то пропустил?
РЕДАКТИРОВАТЬ
@FlowScoped, по крайней мере, мне кажется, частично мотивирован Spring WebFlow, с которым у меня есть некоторый опыт и который, как я знаю, предлагает интеграцию с JSF 2 (не все функции JSF 2.2, кажется, реализованы, но кажется, что PrimeFaces можно использовать, например). Я знаю, что Spring WebFlow + JSF на самом деле используется в приложениях "реального мира", и проблема безопасности потоков объектов с областью потока элегантно решается вместе с проблемами двойной отправки (идентификатор выполнения потока должен предоставляться с каждым HTTP-запросом, и это истекает, и новый возвращается после HTTP-запроса, который вызывает метод "действия" Spring WebFlow: поэтому нельзя одновременно вызывать более одного "действия" для одного и того же пользователя и идентификатора потока).
Поэтому я хочу понять, что является наилучшей практикой в случае JSF 2.2, если я хочу использовать бины @FlowScoped для создания "потока" приложения (без использования Spring WebFlow). Мне действительно нужно синхронизировать доступ к компонентам @FlowScoped самостоятельно, или есть какой-то стандартный способ решения таких проблем?