@Override public void sessionDestroyed(HttpSessionEvent event) { final ServletContext ctx = event.getSession().getServletContext(); // First try to use the context id obtained from the servlet context (OSGi, Servlet containers, etc.) if (beanManager == null) { synchronized (this) { if (beanManager == null) { String contextId = ctx.getInitParameter(Container.CONTEXT_ID_KEY); if (contextId != null) { List<BeanManagerImpl> managers = new ArrayList<BeanManagerImpl>(Container.instance(contextId).beanDeploymentArchives().values()); Collections.sort(managers, BeanManagers.ID_COMPARATOR); beanManager = managers.get(0); } } // servlet containers may not be able to inject fields in a servlet listener if (beanManager == null) { beanManager = BeanManagerProxy.unwrap(CDI.current().getBeanManager()); } } } if (!getSessionContext().isActive()) { HttpSessionDestructionContext context = getHttpSessionDestructionContext(); context.associate(event.getSession()); context.activate(); } }
@Override public void sessionDestroyed(HttpSessionEvent event) { final ServletContext ctx = event.getSession().getServletContext(); // First try to use the context id obtained from the servlet context (OSGi, Servlet containers, etc.) if (beanManager == null) { synchronized (this) { if (beanManager == null) { String contextId = ctx.getInitParameter(Container.CONTEXT_ID_KEY); if (contextId != null) { List<BeanManagerImpl> managers = new ArrayList<BeanManagerImpl>(Container.instance(contextId).beanDeploymentArchives().values()); Collections.sort(managers, BeanManagers.ID_COMPARATOR); beanManager = managers.get(0); } } // servlet containers may not be able to inject fields in a servlet listener if (beanManager == null) { beanManager = BeanManagerProxy.unwrap(CDI.current().getBeanManager()); } } } if (!getSessionContext().isActive()) { HttpSessionDestructionContext context = getHttpSessionDestructionContext(); context.associate(event.getSession()); context.activate(); } }
@Override public void sessionDestroyed(HttpSessionEvent event) { final ServletContext ctx = event.getSession().getServletContext(); // First try to use the context id obtained from the servlet context (OSGi, Servlet containers, etc.) if (beanManager == null) { synchronized (this) { if (beanManager == null) { String contextId = ctx.getInitParameter(Container.CONTEXT_ID_KEY); if (contextId != null) { List<BeanManagerImpl> managers = new ArrayList<BeanManagerImpl>(Container.instance(contextId).beanDeploymentArchives().values()); Collections.sort(managers, BeanManagers.ID_COMPARATOR); beanManager = managers.get(0); } } // servlet containers may not be able to inject fields in a servlet listener if (beanManager == null) { beanManager = BeanManagerProxy.unwrap(CDI.current().getBeanManager()); } } } if (!getSessionContext().isActive()) { HttpSessionDestructionContext context = getHttpSessionDestructionContext(); context.associate(event.getSession()); context.activate(); } }