• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

'no. of users online'

 
Bindesh V Nair
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In order to create the 'no. of users online' servlet, i did the following

Implemented HttpSessionListener and in the sessionCreated(), i incremented the variable kept in the ServletContext by one. And in the sessionDestroyed() decremented it by 1

In the corresponding servlet I printed the value of the ServletContext attribute..

But it is not working..

Pls. help
 
Fernando Margueirat
Ranch Hand
Posts: 34
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
What do you mean by it is not working? What is it doing?

FM
 
Bindesh V Nair
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
It is not showing the no. of users online. I opened two internet explorers, then in the second browser window when i try to access the same web page the logic should work and it show the no. of users online. But it is still showing 1


Pls. help
 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 34965
377
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Bindesh,
The servlet is working correctly. Multiple sessions of IE share a session. If you have another browser on the machine, open it and then you get a new session. Or if you close IE and reopen it, you will get a new session.
 
sarah Marsh
Ranch Hand
Posts: 282
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Multiple sessions of IE share a session, is this definately true?
 
Bindesh V Nair
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks everybody !

I will try and get back ...
 
Alex Kravets
Ranch Hand
Posts: 476
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator


The servlet is working correctly. Multiple sessions of IE share a session. If you have another browser on the machine, open it and then you get a new session. Or if you close IE and reopen it, you will get a new session.



I don't think this is right. Session is being generated by the server and not the browser, so browser has no control over how session is generated. I just tried it on my server and two different session ids are being generated by two sepate instances of IE.

Alex
 
Eric Schumacher
Greenhorn
Posts: 20
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Multiple sessions of IE share a session


This depends on a few things. If you open a new IE window from your existing 'session' (File>New>window) you may infact be sharing the 'session' in two windows. It may also be pssible that when you open a new instance of IE on an XP machine with low amounts of ram you are not always creating a new process...and may be sharing a 'session'....

Older versons of OS's and IE had a setting where you could force new windows to open in new sessions...but this is not the case with XP and IE6.

XP dictates whether new IE instances get a new Process. The more resources available to the system the more likely that that new window of IE will get a new process or session.

If the user creates a new session with ctrl-n they will always share the 'session' between windows as far as I can tell.
[ June 19, 2004: Message edited by: Eric Schumacher ]
 
Alex Kravets
Ranch Hand
Posts: 476
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ok, as I test I loged in to my web page and got session id 3433, then I pressed ctrl-n to launch new browser, loged in and got sesion 5644. So, obviously server is getting new request and creates new session. In my understanding mechanism that creates new session does not know what instance of IE request came from.
Eric, if you mean that by pressing ctrl-n and launching new browser I am sharing the same session, well by just starting a new browser with the same page I do not send a request to the server, and thus new session is not created, I am just display a clone of previous browser instance. As for OS, if I were running JavaScript and object was created, I see how state of OS could affect object's state, but we are dealing with server here...
But in my case I loged in, so may be the mechanism by which session id is getting assigned is a little bit different when servlet runs off the page alone.
Anybody else want to comment, may be I am wrong?

Alex
[ June 19, 2004: Message edited by: Alex Kravets ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic