Bonjour,

j'aimerais avoir un compte de session et afficher le nombre de session active, repris depuis le net j'ai ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
 
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
 
public class SessionCounter implements HttpSessionListener {
    private static int activeSessions = 0;
 
    public static int getActiveSessions() {
        return activeSessions;
    }
 
    @Override
     public void sessionCreated(HttpSessionEvent event) {
 
                activeSessions++;
 
        System.out.println("Session cree: " + event.getSession().getId());
        System.out.println("Total : " + activeSessions);
     }
 
    @Override
     public void sessionDestroyed(HttpSessionEvent event) {
 
            activeSessions--;
 
        System.out.println("Session detruite: " + event.getSession().getId());
        System.out.println("Total : " + activeSessions);
     }
}
Lors de divers connexion, cela incrémente bien et m'affiche le bon résultat mais lorsque je me déconnecte, il fait la méthode sessionDestroyed(HttpSessionEvent event) et refais un sessionCreated(HttpSessionEvent event) juste après ... ??

Layout:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
2015-04-08 00:48:18 
Session detruite: D55A01ABA495AD023FD6C56DC27CD4D3
Total : 1
Session cree: E86A78CA5D44F2796939D04E501B9790
Total : 2
Donc il fait bien la méthode sessionDestroyed et la valeur du compteur est à ce moment correct puis fait directement un sessionCreated mais je ne vois pas pourquoi il fait appel à cette méthode à ce moment là ... ?