OmniFaces @ViewScoped is designed to work with container session management.
Since you are using Shiro’s native session management, the container session 
doesn’t work, and thus @ViewScoped fails.

This is the exact reason I created flowlogix-jee and it’s @ShiroViewScoped / 
@ShiroSessionScoped to deal with this issue.

> On Jan 2, 2018, at 8:48 AM, Rob Young <[email protected]> wrote:
> 
> Hi Lenny,
> 
> Thanks for the reply!  I want to say this happens every time, or at least 
> with great regularity.  Below is a longer output of the logs.
> 
> Regards,
> Rob
> 
>   Error Rendering View[/index.xhtml]
> java.lang.NullPointerException
>     at 
> org.jboss.weld.context.beanstore.http.AbstractSessionBeanStore.getLockStore(AbstractSessionBeanStore.java:112)
>     at 
> org.jboss.weld.context.beanstore.AttributeBeanStore.lock(AttributeBeanStore.java:209)
>     at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:90)
>     at 
> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:76)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:101)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.get(ContextualInstanceStrategy.java:178)
>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>     at 
> org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
>     at 
> org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:125)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeStorageInSession$Proxy$_$$_WeldClientProxy.getBeanStorageId(Unknown
>  Source)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager.getBeanStorage(ViewScopeManager.java:174)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager.getBean(ViewScopeManager.java:125)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager$Proxy$_$$_WeldClientProxy.getBean(Unknown
>  Source)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeContext.get(ViewScopeContext.java:67)
>     at 
> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:70)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:96)
>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>     at 
> org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:761)
>     at 
> org.jboss.weld.el.AbstractWeldELResolver.lookup(AbstractWeldELResolver.java:107)
>     at 
> org.jboss.weld.el.AbstractWeldELResolver.getValue(AbstractWeldELResolver.java:90)
>     at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
>     at 
> com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
>     at 
> com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
>     at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:116)
>     at com.sun.el.parser.AstValue.getBase(AstValue.java:151)
>     at com.sun.el.parser.AstValue.getValue(AstValue.java:200)
>     at com.sun.el.parser.AstNot.getValue(AstNot.java:63)
>     at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
>     at 
> org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
>     at 
> com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
>     at 
> javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
>     at 
> javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:458)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1850)
>     at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
>     at 
> com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458)
>     at 
> com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
>     at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
>     at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
>     at 
> org.omnifaces.viewhandler.OmniViewHandler.renderView(OmniViewHandler.java:121)
>     at 
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
>     at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
>     at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
>     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
>     at 
> org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter(TyrusServletFilter.java:305)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> com.ourwebapp.web.util.CrossSiteHeaderResponseFilter.doFilter(CrossSiteHeaderResponseFilter.java:36)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> com.ourwebapp.web.jsf.beans.util.JsfPageAccessWebFilter.doFilter(JsfPageAccessWebFilter.java:49)
>     at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.omnifaces.filter.CacheControlFilter.doFilter(CacheControlFilter.java:239)
>     at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>     at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>     at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>     at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
>     at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
>     at 
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
>     at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
>     at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
>     at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
>     at 
> com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
>     at 
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
>     at 
> org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
>     at 
> org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
>     at 
> org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
>     at 
> org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
>     at 
> org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
>     at 
> org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
>     at 
> org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
>     at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
>     at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
>     at java.lang.Thread.run(Thread.java:745)
> |#]
> 
> [#|2017-12-29T05:05:45.751+0000|INFO|glassfish 
> 4.1|javax.enterprise.resource.webcontainer.jsf.context|_ThreadID=89;_ThreadName=http-listener-1(5);_TimeMillis=1514523945751;_LevelValue=800;|
>   Exception when handling error trying to reset the response.
> java.lang.NullPointerException
>     at 
> org.jboss.weld.context.beanstore.http.AbstractSessionBeanStore.getLockStore(AbstractSessionBeanStore.java:112)
>     at 
> org.jboss.weld.context.beanstore.AttributeBeanStore.lock(AttributeBeanStore.java:209)
>     at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:90)
>     at 
> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:76)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:101)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.get(ContextualInstanceStrategy.java:178)
>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>     at 
> org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
>     at 
> org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:125)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeStorageInSession$Proxy$_$$_WeldClientProxy.getBeanStorageId(Unknown
>  Source)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager.getBeanStorage(ViewScopeManager.java:174)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager.getBean(ViewScopeManager.java:125)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager$Proxy$_$$_WeldClientProxy.getBean(Unknown
>  Source)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeContext.get(ViewScopeContext.java:67)
>     at 
> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:70)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:96)
>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>     at 
> org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:761)
>     at 
> org.jboss.weld.el.AbstractWeldELResolver.lookup(AbstractWeldELResolver.java:107)
>     at 
> org.jboss.weld.el.AbstractWeldELResolver.getValue(AbstractWeldELResolver.java:90)
>     at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
>     at 
> com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
>     at 
> com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
>     at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:116)
>     at com.sun.el.parser.AstValue.getBase(AstValue.java:151)
>     at com.sun.el.parser.AstValue.getValue(AstValue.java:200)
>     at com.sun.el.parser.AstNot.getValue(AstNot.java:63)
>     at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
>     at 
> org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
>     at 
> com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
>     at 
> javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
>     at 
> javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:458)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1850)
>     at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
>     at 
> com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458)
>     at 
> com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
>     at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
>     at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
>     at 
> org.omnifaces.viewhandler.OmniViewHandler.renderView(OmniViewHandler.java:121)
>     at 
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
>     at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
>     at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
>     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
>     at 
> org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter(TyrusServletFilter.java:305)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> com.ourwebapp.web.util.CrossSiteHeaderResponseFilter.doFilter(CrossSiteHeaderResponseFilter.java:36)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> com.ourwebapp.web.jsf.beans.util.JsfPageAccessWebFilter.doFilter(JsfPageAccessWebFilter.java:49)
>     at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.omnifaces.filter.CacheControlFilter.doFilter(CacheControlFilter.java:239)
>     at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>     at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>     at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>     at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
>     at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
>     at 
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
>     at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
>     at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
>     at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
>     at 
> com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
>     at 
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
>     at 
> org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
>     at 
> org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
>     at 
> org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
>     at 
> org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
>     at 
> org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
>     at 
> org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
>     at 
> org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
>     at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
>     at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
>     at java.lang.Thread.run(Thread.java:745)
> |#]
> 
> [#|2017-12-29T05:05:45.751+0000|INFO|glassfish 
> 4.1||_ThreadID=85;_ThreadName=Thread-8;_TimeMillis=1514523945751;_LevelValue=800;|
>   05:05:45.751 [http-listener-1(1)] INFO  org.crazycake.shiro.RedisSessionDAO 
> - Saving session c6fc2da0-3e10-4aa0-9455-95ad8f2c9707 with expiry 0|#]
> 
> [#|2017-12-29T05:05:45.774+0000|WARNING|glassfish 
> 4.1|javax.enterprise.web|_ThreadID=89;_ThreadName=http-listener-1(5);_TimeMillis=1514523945774;_LevelValue=900;|
>   StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces 
> Servlet threw exception
> java.lang.NullPointerException
>     at 
> org.jboss.weld.context.beanstore.http.AbstractSessionBeanStore.getLockStore(AbstractSessionBeanStore.java:112)
>     at 
> org.jboss.weld.context.beanstore.AttributeBeanStore.lock(AttributeBeanStore.java:209)
>     at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:90)
>     at 
> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:76)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:101)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.get(ContextualInstanceStrategy.java:178)
>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>     at 
> org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
>     at 
> org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:125)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeStorageInSession$Proxy$_$$_WeldClientProxy.getBeanStorageId(Unknown
>  Source)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager.getBeanStorage(ViewScopeManager.java:174)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager.getBean(ViewScopeManager.java:125)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeManager$Proxy$_$$_WeldClientProxy.getBean(Unknown
>  Source)
>     at 
> org.omnifaces.cdi.viewscope.ViewScopeContext.get(ViewScopeContext.java:67)
>     at 
> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:70)
>     at 
> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:96)
>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>     at 
> org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:761)
>     at 
> org.jboss.weld.el.AbstractWeldELResolver.lookup(AbstractWeldELResolver.java:107)
>     at 
> org.jboss.weld.el.AbstractWeldELResolver.getValue(AbstractWeldELResolver.java:90)
>     at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
>     at 
> com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
>     at 
> com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
>     at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:116)
>     at com.sun.el.parser.AstValue.getBase(AstValue.java:151)
>     at com.sun.el.parser.AstValue.getValue(AstValue.java:200)
>     at com.sun.el.parser.AstNot.getValue(AstNot.java:63)
>     at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
>     at 
> org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
>     at 
> com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
>     at 
> javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
>     at 
> javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:458)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1850)
>     at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at 
> com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeRecursive(HtmlBasicRenderer.java:304)
>     at 
> com.sun.faces.renderkit.html_basic.GroupRenderer.encodeChildren(GroupRenderer.java:114)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at 
> com.sun.faces.renderkit.html_basic.CompositeRenderer.encodeChildren(CompositeRenderer.java:78)
>     at 
> javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:890)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1856)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
>     at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
>     at 
> com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:458)
>     at 
> com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:134)
>     at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
>     at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
>     at 
> org.omnifaces.viewhandler.OmniViewHandler.renderView(OmniViewHandler.java:121)
>     at 
> com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
>     at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
>     at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
>     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
>     at 
> org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.glassfish.tyrus.servlet.TyrusServletFilter.doFilter(TyrusServletFilter.java:305)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> com.ourwebapp.web.util.CrossSiteHeaderResponseFilter.doFilter(CrossSiteHeaderResponseFilter.java:36)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> com.ourwebapp.web.jsf.beans.util.JsfPageAccessWebFilter.doFilter(JsfPageAccessWebFilter.java:49)
>     at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.omnifaces.filter.CacheControlFilter.doFilter(CacheControlFilter.java:239)
>     at org.omnifaces.filter.HttpFilter.doFilter(HttpFilter.java:108)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
>     at 
> org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
>     at 
> org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
>     at 
> org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
>     at 
> org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
>     at 
> org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
>     at 
> org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
>     at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
>     at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
>     at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
>     at 
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
>     at 
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
>     at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
>     at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:416)
>     at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:283)
>     at 
> com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
>     at 
> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
>     at 
> org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:206)
>     at 
> org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:180)
>     at 
> org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
>     at 
> org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
>     at 
> org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
>     at 
> org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
>     at 
> org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
>     at 
> org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
>     at 
> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
>     at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
>     at 
> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
>     at java.lang.Thread.run(Thread.java:745)
> 
> On Fri, Dec 29, 2017 at 1:04 PM, Lenny Primak <[email protected] 
> <mailto:[email protected]>> wrote:
> Can you post the full stack trace?
> Does this happen every time or sporadically?
> My guess is the thread that’s executing isn’t correctly set up to handle 
> session management
> 
> 
>> On Dec 29, 2017, at 9:24 AM, Rob Young <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> Hi there,
>> 
>> I'm trying to add distributed session management to a JSF web application.  
>> Currently it uses shiro 1.3.2, and pac4j to do oauth operations (plus a 
>> user/password based login option.)  
>> 
>> We are heavily into using redis for other operations, so I'm trying to use 
>> this project ( https://github.com/alexxiyang/shiro-redis 
>> <https://github.com/alexxiyang/shiro-redis> ) to act as a data store for 
>> sessions.  I can see sessions getting stored in redis, but the JSF pages 
>> throw errors related to Omnifaces.  Just curious if anyone on the list has 
>> seen this error or had ideas for what I'm doing wrong.  I've forked the 
>> project above to convert it to java 8.  Debugged this for a while yesterday, 
>> I can't decide where the culprit is at the moment.
>> 
>> Kind regards,
>> Rob
>> 
>> Shiro.ini
>> [main]
>> #redisManager
>> redisManager = org.crazycake.shiro.RedisManager
>> #optional if you don't specify host the default value is 127.0.0.1
>> redisManager.host = dashboard-redis
>> #optional , default value: 6379
>> redisManager.port = 6379
>> #optional, default value:0 .The expire time is in second
>> #redisManager.expire = 30
>> #optional, timeout for jedis try to connect to redis server(In 
>> milliseconds), not equals to expire time! 
>> redisManager.timeout = 300
>> #optional, password for redis server
>> # redisManager.password = 
>> 
>> #============redisSessionDAO=============
>> redisSessionDAO = org.crazycake.shiro.RedisSessionDAO
>> redisSessionDAO.keyPrefix = user:session:
>> redisSessionDAO.redisManager = $redisManager
>> sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager
>> sessionManager.sessionDAO = $redisSessionDAO
>> securityManager.sessionManager = $sessionManager
>> 
>> #============redisCacheManager===========
>> cacheManager = org.crazycake.shiro.RedisCacheManager
>> cacheManager.keyPrefix = users:security:authz:
>> cacheManager.redisManager = $redisManager
>> #securityManager.cacheManager = $cacheManager
>> 
>> roleAdminAuthGenerator = xxxx
>> 
>> googleOidClient = org.pac4j.oidc.client.GoogleOidcClient
>> googleOidClient.clientID = IDHERE
>> googleOidClient.secret = SECRETHERE
>> googleOidClient.useNonce = true
>> googleOidClient.authorizationGenerator = $roleAdminAuthGenerator
>> 
>> googleCallback = com.customCallback.ABC
>> 
>> clients = org.pac4j.core.client.Clients
>> clients.callbackUrl = $googleCallback
>> clients.clients = $googleOidClient
>> 
>> authc = org.apache.shiro.web.filter.authc.PassThruAuthenticationFilter
>> authc.loginUrl = /login.xhtml
>> user.loginUrl = /login.xhtml
>> 
>> requireRoleAdmin = 
>> org.pac4j.core.authorization.authorizer.RequireAnyRoleAuthorizer
>> requireRoleAdmin.elements = ROLE_ADMIN
>> 
>> config = org.pac4j.core.config.Config
>> config.clients = $clients
>> config.authorizers = admin:$requireRoleAdmin
>> 
>> pac4jRealm = io.buji.pac4j.realm.Pac4jRealm
>> cognitoRealm = com.custom.Realm
>> 
>> pac4jSubjectFactory = io.buji.pac4j.subject.Pac4jSubjectFactory
>> securityManager.subjectFactory = $pac4jSubjectFactory
>> securityManager.rememberMeManager.cipherKey = 
>> 0x22e93dafc56fd676485581753423567C
>> 
>> oidcSecurityFilter = io.buji.pac4j.filter.SecurityFilter
>> oidcSecurityFilter.config = $config
>> oidcSecurityFilter.clients = GoogleOidcClient
>> 
>> callbackFilter = io.buji.pac4j.filter.CallbackFilter
>> callbackFilter.config = $config
>> callbackFilter.multiProfile = true
>> 
>> Stacktrace
>> =========================
>> [#|2017-12-29T05:05:45.737+0000|SEVERE|glassfish 
>> 4.1|javax.enterprise.resource.webcontainer.jsf.application|_ThreadID=89;_ThreadName=http-listener-1(5);_TimeMillis=1514523945737;_LevelValue=1000;|
>>   Error Rendering View[/index.xhtml]
>> java.lang.NullPointerException
>>     at 
>> org.jboss.weld.context.beanstore.http.AbstractSessionBeanStore.getLockStore(AbstractSessionBeanStore.java:112)
>>     at 
>> org.jboss.weld.context.beanstore.AttributeBeanStore.lock(AttributeBeanStore.java:209)
>>     at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:90)
>>     at 
>> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:76)
>>     at 
>> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:101)
>>     at 
>> org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.get(ContextualInstanceStrategy.java:178)
>>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>>     at 
>> org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:99)
>>     at 
>> org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:125)
>>     at 
>> org.omnifaces.cdi.viewscope.ViewScopeStorageInSession$Proxy$_$$_WeldClientProxy.getBeanStorageId(Unknown
>>  Source)
>>     at 
>> org.omnifaces.cdi.viewscope.ViewScopeManager.getBeanStorage(ViewScopeManager.java:174)
>>     at 
>> org.omnifaces.cdi.viewscope.ViewScopeManager.getBean(ViewScopeManager.java:125)
>>     at 
>> org.omnifaces.cdi.viewscope.ViewScopeManager$Proxy$_$$_WeldClientProxy.getBean(Unknown
>>  Source)
>>     at 
>> org.omnifaces.cdi.viewscope.ViewScopeContext.get(ViewScopeContext.java:67)
>>     at 
>> org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:70)
>>     at 
>> org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.get(ContextualInstanceStrategy.java:96)
>>     at org.jboss.weld.bean.ContextualInstance.get(ContextualInstance.java:50)
>>     at 
>> org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:761)
>>     at 
>> org.jboss.weld.el.AbstractWeldELResolver.lookup(AbstractWeldELResolver.java:107)
>>     at 
>> org.jboss.weld.el.AbstractWeldELResolver.getValue(AbstractWeldELResolver.java:90)
>>     at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:188)
>>     at 
>> com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
>> 
>> 
>> -- 
>> Rob Young
>> [email protected] <mailto:[email protected]>
>> 
> 
> 
> 
> 
> -- 
> Rob Young
> [email protected] <mailto:[email protected]>
> 

Reply via email to