【问题标题】:How to implement Session Timeout Handling using pimefaces?如何使用 pimefaces 实现会话超时处理?
【发布时间】:2012-12-24 11:12:43
【问题描述】:

我正在尝试每 30 分钟为我的应用程序进行一次会话超时处理。我的规范:用户会话无效后登录失败时,我必须重定向到登录页面。

用户在超时后被重定向到注销操作以使会话无效。

我是素人面孔的新手,我已经尝试过,但没有用:

<session-config>
    <session-timeout> 1 </session-timeout>

    <error-page>
        <exception-type>javax.faces.application.ViewExpiredException</exception-type>
        <location>faces/login.xhtml</location>
    </error-page>
</session-config>

【问题讨论】:

标签: java jsf session primefaces session-timeout


【解决方案1】:

终于解决了 我在这里使用p:idleMonitor。它会在内部照顾好

<p:idleMonitor timeout="#{login.sessionTimeoutInterval}">
        <p:ajax event="idle" listener="#{login.sessionIdleListener}" /> 
    </p:idleMonitor> 

    <p:confirmDialog  closable="false" id="sessionExpiredDlg" 
                      message="Your session expired."  
                     header="#{msgs['confirmDialog.initiatingDestroyProcess.label']}"
                     severity="alert" widgetVar="sessionExpiredConfirmation" style="z-index: 25000">  

   <p:commandButton id="confirmRouteDel" value="Ok"
                                       oncomplete="sessionExpiredConfirmation.hide()" 
                                       actionListener="#{login.logoutAction}"/>

Java 方法:

public void sessionIdleListener() {
        RequestContext context = RequestContext.getCurrentInstance();
        context.execute("sessionExpiredConfirmation.show()");
    }

看看这个。

http://www.primefaces.org/showcase/ui/misc/idleMonitor.xhtml

里面有两个例子。

【讨论】:

    猜你喜欢
    • 2018-01-24
    • 1970-01-01
    • 1970-01-01
    • 2013-01-21
    • 2011-04-17
    • 2017-05-20
    • 1970-01-01
    • 2018-08-18
    • 1970-01-01
    相关资源
    最近更新 更多