Usuários logados em uma Sessão?

[color=“darkblue”]Em um aplicativo, não sei alguém saberia como eu faria para veirficar os usuários logados na sessão ?

Desde já agradeço !!![/color]

ao efetuar o login coloque uma informação na sessão que diz respeito ao usuário…
por exemplo um id = id_do_usuario

caso expire a sessão ou o usuário faça um logoff este valor será apagado

if( session.getValue(“id”) == null ){
//o usuário não está logado
}

abrass

[color=“darkblue”] Na verdade eu quero quando efetuar o Login no sistema, quero verificar a quantidade de usuários logados na sessão, isso no caso se for logado como Administrador, ou seja quero verificar a quantidade não apenas de pessoas conectadas em uma sesssion mas também seu nome de usário.[/color]

Achei esse código aqui:

javax.servlet.http.*;
import com.jamonapi.*;


/*
To put the object into an HTTPSession call: session.setAttribute("user", new User("steve"));
*/


public class User extends java.lang.Object implements HttpSessionBindingListener {
       private Monitor userMon;
       private Monitor sessionMon;
       // Assumes you have a way of populating the userName
       private String userName;
       public User(String userName) {
       this.userName=userName;
       }


     public void valueBound(HttpSessionBindingEvent event) {
       sessionMon = MonitorFactory.start("MyAppName.allSessions");
       userMon = MonitorFactory.start("MyAppName.session."+userName);
     }


    /* Called when a sessin ends with an explicit invalidate() or its timeout period has been reached. */

     public void valueUnbound(HttpSessionBindingEvent event) {
       userMon.stop();
       sessionMon.stop();
     }


}

faça o seguinte:
-cada usuario que entrar, vai criar um objeto usuario, que possui nome e etc… essa classe sua ai serve, mas ai vc tem q criar uma lista, um ArrayList seria legal, para guardar todos os objetos user, e guarda no servidor, ai qndo vc logar como adm, cria um metodo pra vc verificar o numero de pessoas, e faz um for pra listar seus nomes tb… eu usaria jsp…
tipo:

o usuario entrou:

<%@import "suaclasseUser" %>

User user = new User("nome",etc...);

ArrayList users = (ArrayList)application.getAttribute("users_logados");
if(users==null){
   ArrayList users = new ArrayList();
}


users.add(user);
/*usuario adicionado na lista agora vamos atualiza-la no servidor*/

application.setAttribute("users_logados",users);
(...)
%>

ai qndo vc logar o seu metodo deve retornar o seguinte:


ArrayList users = (ArrayList)application.getAttribute("users_logados");
int logados=users.size();//retorna o nº de posições preenchidas.

//para pegar os nomes faça um for com essa instrução dentro:
User user = (User)users.get(cont); //cont=contador do for
System.out.println(user.getNome());

bom tem varios jeitos de se fazer… mas eu faria assim…
flw

so nao esqueça que qndo o usuario sair o msm deve ser apagado do arraylist

users.remove(nomedouser);

[color=“darkblue”]
Obrigado a todos pelas respostas !
[/color]