Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Data value и Spring Security / 4 сообщений из 4, страница 1 из 1
06.04.2013, 23:25:33
    #38215724
oson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Data value и Spring Security
А как собственно и где в Spring Security хранить data value между запросами юзера? Для этого есть специальный механизм и объекты?
Или просто получать доступ к http session и устанавливать туда аттрибуты?
...
Рейтинг: 0 / 0
07.04.2013, 03:47:18
    #38215810
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Data value и Spring Security
Не очень понял при чем тут Spring Security ... Srping Core.
В любом случае, это практика сервлетов. Само собой, можно. Но вроде как best practics - бины с scope="session" (и с <aop:scoped-proxy/>).
...
Рейтинг: 0 / 0
08.04.2013, 18:05:58
    #38217761
oson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Data value и Spring Security
Я тоже так думал.
Но вот тут
http://www.sql.ru/forum/actualthread.aspx?tid=1002871&pg=-1
Blazkowicz там очень убедительно объясняет, почему бины с scope="session" - это не best practics :

BlazkowiczПоложили UserManager в сессию. Остановили сервер. Сервер сериализовал UserManager на диск. (В вашем случае тупо обрыгался, потому что UserManager не Serializable). Но допустим мы сделали его Serializable.
Запустили сервер. Тот прочитал UserManager с диска, восстановил сессию. И что у нас там стало с Service и Repository? Они ведь уже не привязаны к новому спринговому контексту.
Внимательно перечитайте статью. В вашем случае сервер будет пытаться сериализовать UserManager со всеми его сервисами, репозиториями и, возможно, вообще полным спринговым контекстом.

Т.е. на продакшн сервере, при ребуте все клиентские сессии умирают это раз.
Кластеризация с репликацией сессии становится не возможно это два.
А если мы сделаем ссылки транзиентными, то они будут обнулятся.
По-хорошему нужно переопределить десериализацию и восстанавливать ссылки на классы контекста при чтении объектов сессии из байт.
Но ведь гораздо проще хранить тупые Value Object в сессии и не заморачиваться с ссылками.

Далее в том же топике

BlazkowiczНе храните всё подряд в session scope, а только то что там действительно нужно. Нет смысла писать свою security и использовать HttpSession, когда Spring Security уже реализует такой же механизм, а session scope позволяет привязывать данные к сессии.

Отсюда и вопрос - как хранить Value Object при помощи SpringSecurity?
...
Рейтинг: 0 / 0
08.04.2013, 18:08:36
    #38217769
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Data value и Spring Security
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Data value и Spring Security / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]