Ajuda

4 respostas
K

tenho um sistema e queria saber quantas pessoas estão logadas. isso e para mandar uma pop-up de alerta que o admin ta fazendo alguma alteração.

Quem poder da uma ajuda agradeço.

4 Respostas

J

Oi

Kadumoura, esse seu sitema, é desktop? Web?

Sendo Web, tu usa o que? Session? Requests???

Enfim, manda mais detalhes aí… :slight_smile:

T+

M

um exemplo disso pra web seria:

package com.foo;

public class Contador implements HttpSessionListener {

   private static int numero = 0;

   public void sessionCreated( HttpSessionEvent e )
   {
      numero++;
   }

   public void sessionDestroyed( HttpSessionEvent e )
   {
      numero--;
   }

   public static int getNumeroDeSessoes()
   {
      return numero;
   }

}

..e partir da tua jsp poderia fazer o seguinte:

<%= com.foo.Contador.getNumeroDeSessoes() %>
D

Ei matheus, achei muito interessante essa sua solução… mas vc poderia explicar um pouco mais essa interface HttpSessionListener ?!? Ela eh chamada assim q o cliente acessa o site?!

vlwz

M

bem, nao sei muito desses listeners, mas é possivel q algo dentro da tua aplicação ocorra quando as sessões começam e terminam… com uma jsp, é possivel iniciar callbacks para objetos vinculados a sessões quando um asessão termina, ou seja… fazer com q um método seja chamado qnd as sessões terminam, a interface javax.servlet.http.HttpSessionBindingListener pode ser implementada por objetos q precisam ter informações sobre a vinculação e desvinculação de objetos de sessões, ela só tem 2 métodos:

void valueBound( HttpSessionBindingEvent e )
void valueUnbound( HttpSessionBindingEvent e )

…q são chamados qnd os objetos são vinculados e desvinculados… bem, eu nao sei muito disso, tenho num livro meu, sobre o HttpSessionListener, ele tem dois métodos:

void sessionCreated( HttpSessionEvent e )
void sessionDestroyed( HttpSessionEvent e )

…q são executados qnd uma sessão é criada, ou destruida, respectivamente…, ah, eu havia me esquecido, tu precisa definir a classe q implementa HttpSessionListener no web.xml, dentro de <listeners>, cada listener é especificado dentro de <listener-class>, no caso, ficaria algo assim:

&lt;web-app&gt; ... ... &lt;listener&gt; &lt;listener-class&gt;com.foo.Contador&lt;/listener-class&gt; &lt;/listener&gt; &lt;/web-app&gt; [/code]

Criado 18 de junho de 2004
Ultima resposta 20 de jun. de 2004
Respostas 4
Participantes 4