Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1444 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Partage de classes statiques entre web-apps

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Partage de classes statiques entre web-apps

n°710980
El_gringo
Posté le 28-04-2004 à 15:05:20  profilanswer
 

Surprise. Très agréable, vu la situation dans laquelle je me trouvais.
J'explique :
 
Au départ, on a une web-app.
Celle-ci utilise divers singletons, dont 1 étant une encapsulation de la classe Properties, et 1 autre étant un contrôle de pool de connexions.
 
Je pensais, à mon grand désaroit, que si j'installais ma web-app 2 fois (2 contextes différents) sur un même moteur de servlets, ces web-app allaient partager ces instances (une seule instance de chacun des singletons communs aux 2 web-apps).
He bien non. Tout est bien séparé, comme je n'osais même pas l'éspérer.
 
Quelqu'un à une expliquation a ce phénomène qui, pour l'instant à quelque chose de surnaturel à mes yeux ?

mood
Publicité
Posté le 28-04-2004 à 15:05:20  profilanswer
 

n°710982
darklord
You're welcome
Posté le 28-04-2004 à 15:06:12  profilanswer
 

Classloader

n°710984
El_gringo
Posté le 28-04-2004 à 15:07:22  profilanswer
 

Tomcat à un Classloader différent par web-app ?
 
EDIT : Et selon toi, c'est une spécificité Tomcat ou tous les Moteurs de servlets fonctionnent comme ça ?


Message édité par El_gringo le 28-04-2004 à 15:08:14
n°711159
El_gringo
Posté le 28-04-2004 à 16:53:32  profilanswer
 

Donc ça ne vous choque en rien non plus que j'utilise 2 singletons pour les 2 choses que je viens de décrire ?

n°711399
the real m​oins moins
Posté le 28-04-2004 à 23:10:47  profilanswer
 

oui, un classloader par webapp, et c'est pas spécifique à tomcat
 
et tu vis ta vie avec tes singletons. perso je trouve que ça pue, quoi qu'il en soit donc bon [:spamafote]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°712519
El_gringo
Posté le 30-04-2004 à 08:59:28  profilanswer
 

Qu'est ce qui pue ?

n°712695
the real m​oins moins
Posté le 30-04-2004 à 11:45:51  profilanswer
 

les singletons


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°712703
El_gringo
Posté le 30-04-2004 à 12:04:07  profilanswer
 


 
les singletons en général ?
Ou alors les singletons pour les 2 cas que j'ai cités ?

n°712706
the real m​oins moins
Posté le 30-04-2004 à 12:08:28  profilanswer
 

en general


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°712724
El_gringo
Posté le 30-04-2004 à 12:26:01  profilanswer
 

Ben, dans mon cas, j'avoue que si j'avais à le refaire, je le ferais différament. Mais y a pas mal de cas où je n'vois pas comment se passer de singletons. Sauf à utiliser des méthodes statiques, mais c'est pire !

mood
Publicité
Posté le 30-04-2004 à 12:26:01  profilanswer
 

n°712726
alien_nan
Posté le 30-04-2004 à 12:33:33  profilanswer
 


 
ALors quelle methode utilises tu qd tu dois charger un pool de connexion dans un projet web ?

n°713000
benou
Posté le 30-04-2004 à 16:59:48  profilanswer
 
n°713005
benou
Posté le 30-04-2004 à 17:02:50  profilanswer
 

El_gringo a écrit :

Ben, dans mon cas, j'avoue que si j'avais à le refaire, je le ferais différament. Mais y a pas mal de cas où je n'vois pas comment se passer de singletons. Sauf à utiliser des méthodes statiques, mais c'est pire !


ca reviendra au même avec des static : la notion de static est lié au classloader => si tu as des "classloader cousins" ils ne partageront pas les même variables static.
 
Une solutions pour ca est de mettre tes classes avec singletons (ou variable static, ce qui revient au même) dans un endroit où 1 seul classloader "parent" des classloader "cousins" est utilisé pour faire le chargement des classes.
 
Pour tomcat, tu peux peux metter tes classes dans common/classes : ce rep est accessible par toutes les web-app et chargé par un seul classloader (à vérifier, mais je suis quasi-sûr)


---------------
ma vie, mon oeuvre - HomePlayer
n°713007
the real m​oins moins
Posté le 30-04-2004 à 17:07:40  profilanswer
 

kest'a?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°713008
uriel
blood pt.2
Posté le 30-04-2004 à 17:08:31  profilanswer
 

[:popcorn]


---------------
IVG en france
n°713104
benou
Posté le 30-04-2004 à 18:59:17  profilanswer
 


pkoi t'aime pas les singletons ?
 
J'ai du mal à imagnier pourquoi on pourrait ne pas aimer les singletons :??:


---------------
ma vie, mon oeuvre - HomePlayer
n°713109
the real m​oins moins
Posté le 30-04-2004 à 19:03:05  profilanswer
 

parce que
- y'a une patée de code la dedans qui sert à rien et qui rend le machin anti objet (quelle joie d'étendre un singleton)
- c'est accessible globalement par n'importe qui de n'importe ou dans le code
- c'est merdique à tester (pas mockable)
 
http://docs.codehaus.org/display/P [...] ntipattern
 


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°713163
benou
Posté le 30-04-2004 à 20:20:32  profilanswer
 

je regarde ca dès que ma tête arrête de me faire mal ...


---------------
ma vie, mon oeuvre - HomePlayer
n°714504
pascal34
one point !
Posté le 03-05-2004 à 17:42:29  profilanswer
 

the real moins moins a écrit :

parce que
- y'a une patée de code la dedans qui sert à rien et qui rend le machin anti objet (quelle joie d'étendre un singleton)
- c'est accessible globalement par n'importe qui de n'importe ou dans le code
- c'est merdique à tester (pas mockable)


 
Le Singleton c'est comme toute chose : c'est bien quand c'est bien utilisé. C'est souvant couplé à un pattern Fabrique ou Façade.
 
Le java c'est bien, c'est objet, blabla...
MAIS rien t'empêche de coder tout un programme dans l'unique méthode Main de ton unique classe.
 
Tout est affaire d'architecture logicielle  :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Partage de classes statiques entre web-apps

 

Sujets relatifs
Utilisez vous les classes ??[JAVA] Variables statiques et tomcat
[Php et classes] valeur par default pour des parametres de fonctionsargg j'ai une sale erreur, pourquoi ? (classes PHP)
Probleme au niveau des classes...Aide sur les classes !
[UML] classes : agrégation et composition (jeu)[Java] Hierarchie / Diagramme des classes
manip de classes et fonctions...[C++] Utilisation de librairies statiques VC++ sous Builder C++
Plus de sujets relatifs à : Partage de classes statiques entre web-apps


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR