【问题标题】:How can I notify the user that the session time has elapsed?如何通知用户会话时间已过?
【发布时间】:2013-10-03 23:47:31
【问题描述】:

我在 bean 中创建了一个方法

public void checkSessionLife() {
        if (FacesContext.getCurrentInstance().getExternalContext().getSession(false)==null) {
            System.out.println("*\n");
            System.out.println("destroyed");
            FacesContext.getCurrentInstance().addMessage("sessiongr", new FacesMessage(FacesMessage.SEVERITY_INFO, "erer", "errrrrrrrrr"));
            RequestContext requestContext = RequestContext.getCurrentInstance();
            requestContext.update(Arrays.asList("hreaderForm:sessiongr"));
        }
    }

在我的PgTemlate.xhtml 中添加<p:poll> 以更新<p:growl>

<p:poll interval="5" listener="#{accessBean.checkSessionLife()}" process="@this" global="false"/>
                <p:growl id="sessiongr" showDetail="true" sticky="true"/>

问题是活动被视为&lt;p:poll&gt; 活动会话 他有其他方法通知用户吗?

【问题讨论】:

    标签: session jsf-2 primefaces managed-bean


    【解决方案1】:

    accessBean 的作用域是什么?如果它小于应用程序范围,我相信该函数将无法运行,因为 JSF 找不到 bean。

    尽管如此,这不是处理会话到期的推荐方法。对于首选,请参阅BalusC's method

    【讨论】:

      猜你喜欢
      • 2020-08-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-26
      • 2013-07-23
      • 1970-01-01
      • 2016-01-21
      相关资源
      最近更新 更多