Пример PrimeFaces idleMonitor

Компонент idleMonitor , отслеживает действия пользователя и срабатывает, когда пользователь снова становится бездействующим или активным. По умолчанию время простоя установлено на 5 минут (300000 мс), и вы можете настроить продолжительность с помощью атрибута timeout, как показано ниже:

  <!-- fire if user idle for 10 seconds -->
  <p:idleMonitor timeout="10000" onidle="idleDialog.show()"/>

В этом уроке мы покажем вам пример idleMonitor , запрашивающий диалог подтверждения, если пользователь простаивает в течение 10 секунд. На самом деле, этот пример вдохновлен веб-сайтом моего банка, он всегда запрашивает меня и спрашивает, хочу ли я продолжить после простоя в течение 5 минут.

Используемые инструменты:

, PrimeFaces 3.3

, JSF 2.2.11

, Затмение 4.2

, Maven 3

, Tomcat 7

1. Компонент idleMonitor

Если пользователь не используется в течение 10 секунд, появится диалоговое окно подтверждения и спросит, хочет ли пользователь продолжить или выйти из системы?

, Если да, закройте диалоговое окно подтверждения и отобразите приветствие

сообщение через компонент Growl.

, Если пользователь выберет выход из системы, закройте также диалоговое окно подтверждения и отобразите

выход из системы через компонент Growl.

index.xhtml

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:p="http://primefaces.org/ui">

<h:head>
</h:head>
<h:body>
 <h1>PrimeFaces idleMonitor example</h1>

  <h:form>
    <p:growl id="msg" showDetail="true" sticky="true"/>

    <!-- If idle 10 seconds, run 'idleDialog' -->
    <p:idleMonitor timeout="10000" onidle="idleDialog.show()"/>

    <p:confirmDialog id="confirmDialog"
        message="You have been idle for at least 10 seconds,
                            Please click ok to continue."
        header="Are you there?" severity="alert" widgetVar="idleDialog">

        <p:commandButton id="confirm" value="Ok" update="msg"
            oncomplete="idleDialog.hide()"
            actionListener="#{idleBean.welcomeListener}"/>

        <p:commandButton id="Logout" value="LogMeOut" update="msg"
            oncomplete="idleDialog.hide()"
            actionListener="#{idleBean.logoutListener}"/>

    </p:confirmDialog>

  </h:form>

</h:body>
</html>

2. ManageBean

Предоставить сообщение лиц для компонента Growl.

IdleMonitorBean.java

package com.mkyong;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;

@ManagedBean(name = "idleBean")
public class IdleMonitorBean {

    public void welcomeListener() {
        FacesContext.getCurrentInstance().addMessage(
        null,
        new FacesMessage(FacesMessage.SEVERITY__WARN, "Welcome Back",
            "Continue your works."));

    }

    public void logoutListener() {
        FacesContext.getCurrentInstance().addMessage(
        null,
        new FacesMessage(FacesMessage.SEVERITY__WARN,
            "You Have Logged Out!",
            "Thank you for using abc Online Financial Services"));

       //invalidate session, and redirect to other pages
    }
}

3. Демо

http://Localhost : 8080/primefaces/

Пример PrimeFaces idleMonitor

Пример PrimeFaces idleMonitor

Скачать исходный код

Загрузите его - ссылка://wp-content/uploads/2012/08/primefaces-IdleMonitor-example.zip[primefaces-IdleMonitor-example.zip](11 КБ)

Рекомендации

idleMonitor витрина]

ссылка://тег/primefaces/[primefaces]