> Sorry about that, I should have left David answer it first time :( > > -- > Rapha�l Luta - [EMAIL PROTECTED]
I gave this issue some thought, and I think only solution that works in clustered environments and solves the multiple sessions per user issue is to store a login counter to the DB/LDAP user entry. Every login increments the counter, and every logout decrements the counter. And if counter is not 0, user has logged it. This would require us to perform additional datastore updates though, and it makes user management more complicated. A quick and easy "dummy" solution is to store this counter to a Hashtable in UserManagement implementation, and when getUsers() is performed, it checks if the user already has an entry in that Hashtable, and does not build the user object from datastore if the user object is already constructed. This does not work in clustered environments, but would however be better than the current solution, where we cannot really know who has logged in to the system (except by running 'getUser(principal)' for every user returned by 'getUsers()', and this is really _not_ a good thing to do). No duplicate user objects would be created using this approach. How commonly is Jetspeed run in clustered environments? Regards, Sami -- Sami Leino Software Developer, Netorek Oy, Turku, Finland Email: [EMAIL PROTECTED] Phone: +358 44 0140499 -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
