【发布时间】:2014-02-14 03:56:16
【问题描述】:
在我的应用程序中,我有一个顶部栏,上面有一个调用 bean 方法的注销按钮
public String logout(){
FacesContext.getCurrentInstance().getExternalContext().invalidateSession();
return Navigator.goTo("/index.xhtml");
}
它运作良好,但我有一个特定的页面,它因此异常而失败
2014-01-23T15:17:42.405+0100|WARNING: 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:120)
at org.jboss.weld.context.beanstore.AttributeBeanStore.lock(AttributeBeanStore.java:219)
at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:97)
at org.jboss.weld.context.PassivatingContextWrapper$AbstractPassivatingContextWrapper.get(PassivatingContextWrapper.java:64)
at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:93)
at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79)
at org.omnifaces.cdi.viewscope.ViewScopeManager$Proxy$_$$_WeldClientProxy.preDestroyView(Unknown Source)
at org.omnifaces.application.ViewScopeEventListener.processEvent(ViewScopeEventListener.java:56)
at javax.faces.event.SystemEvent.processListener(SystemEvent.java:108)
这个页面和另一个页面之间的唯一区别是这个页面使用了一个 ViewScoped Bean,但我不明白这怎么会是一个问题。解决方案?谢谢
【问题讨论】:
-
你能解决这个问题吗?
标签: jsf omnifaces view-scope