Olá galera estou com um problema, como fazer para criar um contador de visitas e um contador de usuario online.
implementei a interface HttpSessionListener, criei uma variavel userOn é incremento-a toda vez no metodo sessionCreated, de igual modo faço isso para uma variavel chamada visitas.
A unica diferença das duas é que a userOn eu decremento toda vez no metodo sessionDestroyed
Como faço para recuperar estes valores na minha pagina JSP.
[size=14]GALERA RESOLVI
Alterei meus atributos e meus metodos getter desses atributos como static.
Aí na aplicação chamei a propria classe listener, já que elas são inicializada junto com a aplicação e perduram por todo tempo ouvindo os eventos.[/size]
Vou postar todo o codigo necessário aqui, caso alguem precise um dia.
web.xml
...
<listener>
<listener-class>br.com.william.listener.ContadorSessionListener</listener-class>
</listener>
...[/code]
index.jsp
Para mostrar na pagina
....
ContadorSessionListener.getSessionCount();
....
[code]package br.com.william.listener;
import java.util.Date;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class ContadorSessionListener implements HttpSessionListener {
private static int sessionCount = 0;
private static int applicationCount = 0;
public static int getSessionCount() {
return sessionCount;
}
public static int getApplicationCount() {
return applicationCount;
}
public ContadorSessionListener() {
}
public void sessionCreated(HttpSessionEvent se) {
HttpSession session = se.getSession();
session.setMaxInactiveInterval(15*60);
synchronized (this) {
++sessionCount;
++applicationCount;
}
}
public void sessionDestroyed(HttpSessionEvent se) {
synchronized (this) {
--sessionCount;
}
}
[quote=mrbbm]Está funcionando?
[/quote]
Opa, i aí galera tudo jóia, bom fiz o mesmo código que o colega ai porém ele já dá início ao contador logo quando acesso a página de login, mas vamos supor que a sessão somente pode ser contata a partir do login do usuário. Como proceder?
Obs. Tenho um Filter que trata autenticação nula e/ou vazia, e estou trantando tudo com JSF 2.0.