Я не очень опытен с Flex, но поскольку это показалось мне интересным, и мне не нравится, когда вопросы остаются без ответа, я думал, что у меня будет удар. Насколько я понимаю, сеанс Flex (HttpFlexSession) и HttpSession являются полностью отдельными объектами. При этом вы должны иметь возможность обмениваться данными между ними.
Существует очень актуальная свободная глава (Chapter 20: Flex Integration with J2EE), доступная из книги Стивена Вебстера и Алистера Маклеода «Разработка Rich клиентов с Macromedia Flex».
Теперь я приведу цитату из этой свободной главы! Особо следует отметить:
Поддержание государственного
Самый большой скачок в понимании к быть не в том, что там больше не необходимость состояния HTTP сеанса. Хотя ваши запросы между богатым клиентом и сервером , в конечном счете делается через HTTP, HTTP свелась к транспортной технологии вместо технологии, что нам нужно интегрировать с. Разработчики J2EE удобны с концепцией размещения атрибутов и параметров в HTTP-запросе и объектов ответа и поддержания состояния путем хранения объектов в сеансе HTTP . ...
... Flex может фактически предлагают доступ к HTTP-сеанса и позволяет клиенту Flex лечить HTTP сессию «просто еще один объект на сервере.» Однако, по нашему опыту, использование сеанса HTTP должно быть «неприятным запахом» , которое идентифицирует возможность рефакторинга , чтобы перевести часть вашего состояния приложения на клиент.
В дальнейшем в этой главе показано, как настроить объект сеанса для доступа клиента Flex.
Получение доступа к J2EE сессий
Flex preconfigures сеанса сервлет в файле web.xml по умолчанию, который делает доступными на стороне сервера Java объект, который может быть использован для доступа и изменить сеанс J2EE для приложения .Разместив один из следующих определений удаленных объектов в нашей Service Locator в services.mxml, мы делаем доступными для нашего приложения услуг, которые можно получить и установить объекты на в J2EE сессии, а также удалить объектов из сессия:
<mx:Remote object source="servlet" id="sessionObject" />
<mx:Remote object source="@ContextRoot()" id="sessionObject"/>
Как и с любым другой < тм: RemoteObject > тегом, служба сеанса может использовать результат и событие вина обработчиков обрабатывает запросы для извлечения элементов из сеанса. Дескриптор web.xml определяет имя сеанса сервлет как сервлет; Таким образом, мы используем один из следующих примеров работы с J2EE сессией:
sessionObject.session("set","customerID", 700);
sessionObject.session("get", "customerID");
sessionObject.session("remove", "customerID");
Эти три примера показывает, как службы сеанса используется для получения, набора или удалять элементы в сеанс J2EE от клиента Flex.
Так что, казалось бы, что, хотя вы можете доля данных сессии между Flex и серверной Java, однако, предположение, кажется, что это антишаблоном.
Что касается мер безопасности, если вы использовали сервлет-фильтры для реализации ограничения IP-адресов, то ваша безопасность может быть применена ко всем ресурсам вашего веб-приложения (независимо от того, была ли она принадлежностью Struts или Flex).
Извините, я ценю работу, которую вы вложили в свой ответ, но, к сожалению, это не относится к делу. Мой вопрос совсем не о Flex (клиентской стороне) вообще, это о том, что мне нужно сделать в Struts (на сервере). Также я не использую серверные компоненты, на которые они ссылаются в статье. Я явно ищу решение на основе Struts. –