Я пытаюсь @Inject
bean-компонент @SessionScoped
в фильтр
@WebFilter("/*")
public class IdentityFilter implements Filter, Serializable {
@Inject
private LoginUser loginUser;
...
, где LoginUser
равно @SessionScoped
Намерение состоит в том, что loginUser представляет вошедшего в систему пользователя для сеанса.
Проблема в том, что я не всегда получаю loginUser
из текущего сеанса, я получаю «утечку» между сеансами, поскольку объект LoginUser одного сеанса используется совместно с другим сеансом. Очевидно, это не хорошо.
Мне интересно, связано ли это с тем, что объект Filter
является одноэлементным или, по крайней мере, повторно используется контейнером (glassfish) между запросами и сеансами. (Правильно?)
Есть ли лучший способ получить объект LoginUser
для текущего сеанса без использования свойства в фильтре?