Je pense que c'est la solution qui �tait propos�e et qui a �t� utilis�e :-).
Par contre, il reste � comprendre si c'est bien le comportement normal que deux sous-classes d'une m�me classe ne partagent pas la r�f�rence d'une variabgle static d�finie au niveau de la super-classe.
Je ne connais pas assez bien les spec Java pour confirmer que c'est le comportement normal, mais �a ne me choque pas outre mesure.
-----Message d'origine-----
De : Jean-Baptiste BRIAUD [mailto:[EMAIL PROTECTED]
Envoy� : mercredi 4 juin 2003 15:22
� : [EMAIL PROTECTED]
Objet : RE : Pbm acces attribut static d'une servlet

Une possibilit� : au lieu de vouloir � rendre singleton � les 2 servlet,

� rendre singleton � une classe de gestion du nombre de connexion.

Les servlets, quelque soit le nombre d’instance, acc�de � une unique instance de l’objet de gestion des connection.

Naturellement, les methodes plusUn() et moinsUn() seront synchronized.

 

-----Message d'origine-----
De : Laurent For�t [mailto:[EMAIL PROTECTED]
Envoy� : mercredi 4 juin 2003 15:14
� : [EMAIL PROTECTED]
Objet : Re: Pbm acces attribut static d'une servlet

 

Oui mais l�, une incr�mentation/d�cr�mentation d'un int est une op�ration que je consid�re atomique (je ne sais pas si elle l'est r�ellement) que l'on peut ne pas synchroniser.

 

le probl�me qu'il y ait deux r�f�rences d'un membre static de la classe m�re, c'est un probl�me que je ne saurai pas expliquer.

 

Laurent.

----- Original Message -----

Sent: Wednesday, June 04, 2003 2:59 PM

Subject: RE : Pbm acces attribut static d'une servlet

 

Bonjour,

 

Je ne sais pas si c’est la source de vos probl�mes, mais attention aux threads !

Les servlets sont en acc�s concurrents et sont � parcourues � par des threads.

Donc dans la situation d’attributs a incr�menter (plus g�n�ralement � modifier) il faut jouer avec synchronized.

 

-----Message d'origine-----
De : Samuel BONNANFANT [mailto:[EMAIL PROTECTED]
Envoy� : mercredi 4 juin 2003 14:40
� : [EMAIL PROTECTED]
Objet : Re: Pbm acces attribut static d'une servlet

 

Merci,

 

J'ai effectivement utilis� une classe Singleton qui a r�solu le probl�me.

Par contre, je ne saisi pas pourquoi ma variable static �tait charg�e deux fois...

Les servlets peuvent �tre charg�es dans des espaces m�moire diff�rents ?

----- Original Message -----

Sent: Wednesday, June 04, 2003 2:13 PM

Subject: Re: Pbm acces attribut static d'une servlet

 

Une solution : le pattern singleton.

 

Laurent.

----- Original Message -----

Sent: Tuesday, June 03, 2003 10:36 AM

Subject: Pbm acces attribut static d'une servlet

 

Bonjour,

 

J'ai 2 servlets (une de connexion, l'autre de deconnexion) qui heritent d'une servlet abstraite d�finissant un attribut static "s_nb_sessions" : nb de sessions ouvertes.

La servlet de connexion incremente ce nombre, celle de deconnexion le decremente.

Mon pbm : les 2 servlets semblent pointer sur 2 r�f�rences distinctes !

 

Environnement : jdk 1.1.8, Weblogic 5.1

 

Merci !

 

--

sAm

Répondre à