hello,
il me semble avoir des problèmes avec finalize() lors de la fermeture
d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
dans un autre registre, mais toujours avec tomcat:
je me suis aperçu qu'un simple appel dans une classe a
System.exit()... arretait tout simplement tomcat ! y a t'il moyen de
bloquer ceci ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jerome moliere
Joe wrote:
hello, il me semble avoir des problèmes avec finalize() lors de la fermeture d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE ou en dehors cette methode est dangereuse...
dans un autre registre, mais toujours avec tomcat: je me suis aperçu qu'un simple appel dans une classe a System.exit()... arretait tout simplement tomcat ! y a t'il moyen de bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
jamais essaye !! :)
merci d'avance ! joe
Joe wrote:
hello,
il me semble avoir des problèmes avec finalize() lors de la fermeture
d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE
ou en dehors cette methode est dangereuse...
dans un autre registre, mais toujours avec tomcat:
je me suis aperçu qu'un simple appel dans une classe a
System.exit()... arretait tout simplement tomcat ! y a t'il moyen de
bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
hello, il me semble avoir des problèmes avec finalize() lors de la fermeture d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE ou en dehors cette methode est dangereuse...
dans un autre registre, mais toujours avec tomcat: je me suis aperçu qu'un simple appel dans une classe a System.exit()... arretait tout simplement tomcat ! y a t'il moyen de bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
jamais essaye !! :)
merci d'avance ! joe
Joe
On Mon, 13 Oct 2003 20:12:57 +0200, jerome moliere wrote:
Joe wrote:
hello, il me semble avoir des problèmes avec finalize() lors de la fermeture d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE ou en dehors cette methode est dangereuse...
effectivement, mais dans ce cas comment effectuer un traitement (style
fermer proprement des Connection en cas d'arret de tomcat ?)
dans un autre registre, mais toujours avec tomcat: je me suis aperçu qu'un simple appel dans une classe a System.exit()... arretait tout simplement tomcat ! y a t'il moyen de bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
jamais essaye !! :)
oui, j'ai trouvé ca assez hallucinant... mais ca marche !
si c'est impossible a bloquer, je vois mal comment fournir une solution d'hébergement public basée sur tomcat !
On Mon, 13 Oct 2003 20:12:57 +0200, jerome moliere wrote:
Joe wrote:
hello,
il me semble avoir des problèmes avec finalize() lors de la fermeture
d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE
ou en dehors cette methode est dangereuse...
effectivement, mais dans ce cas comment effectuer un traitement (style
fermer proprement des Connection en cas d'arret de tomcat ?)
dans un autre registre, mais toujours avec tomcat:
je me suis aperçu qu'un simple appel dans une classe a
System.exit()... arretait tout simplement tomcat ! y a t'il moyen de
bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
jamais essaye !! :)
oui, j'ai trouvé ca assez hallucinant... mais ca marche !
si c'est impossible a bloquer, je vois mal comment fournir une solution
d'hébergement public basée sur tomcat !
On Mon, 13 Oct 2003 20:12:57 +0200, jerome moliere wrote:
Joe wrote:
hello, il me semble avoir des problèmes avec finalize() lors de la fermeture d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE ou en dehors cette methode est dangereuse...
effectivement, mais dans ce cas comment effectuer un traitement (style
fermer proprement des Connection en cas d'arret de tomcat ?)
dans un autre registre, mais toujours avec tomcat: je me suis aperçu qu'un simple appel dans une classe a System.exit()... arretait tout simplement tomcat ! y a t'il moyen de bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
jamais essaye !! :)
oui, j'ai trouvé ca assez hallucinant... mais ca marche !
si c'est impossible a bloquer, je vois mal comment fournir une solution d'hébergement public basée sur tomcat !
Cédric Chabanois
Joe wrote:
hello, il me semble avoir des problèmes avec finalize() lors de la fermeture d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE ou en dehors cette methode est dangereuse...
effectivement, mais dans ce cas comment effectuer un traitement (style fermer proprement des Connection en cas d'arret de tomcat ?)
finalize est appelée par le GC avant de libérer l'objet. Donc on ne peut pas prédire quand cette méthode va être appelée, cela dépend de la JVM, de la mémoire disponible ...
Et les objets peuvent très bien ne pas être "garbage collectés". Lorsque la JVM se termine, la mémoire est retournée en masse à l'OS, sans que les objets ne soient "garbage collectés". Enfin ca doit dépendre de la JVM mais c'est souvent comme ca. Donc, comme le dit Jerome : RIEN dans le finalize. finalize n'est pas l'équivalent du destructeur C++.
Si tu veux fermer correctement des connections, appelle une méthode pour le faire.
dans un autre registre, mais toujours avec tomcat: je me suis aperçu qu'un simple appel dans une classe a System.exit()... arretait tout simplement tomcat ! y a t'il moyen de bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai jamais essaye !! :)
Ouai très étrange. Cela se règle peut-être en paramétrant le security manager : http://jakarta.apache.org/tomcat/tomcat-4.0-doc/security-manager-howto.html
Cédric
Joe wrote:
hello,
il me semble avoir des problèmes avec finalize() lors de la fermeture
d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode
finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE
ou en dehors cette methode est dangereuse...
effectivement, mais dans ce cas comment effectuer un traitement (style
fermer proprement des Connection en cas d'arret de tomcat ?)
finalize est appelée par le GC avant de libérer l'objet. Donc on ne peut
pas prédire quand cette méthode va être appelée, cela dépend de la
JVM, de la mémoire disponible ...
Et les objets peuvent très bien ne pas être "garbage collectés". Lorsque
la JVM se termine, la mémoire est retournée en masse à l'OS, sans que
les objets ne soient "garbage collectés".
Enfin ca doit dépendre de la JVM mais c'est souvent comme ca.
Donc, comme le dit Jerome : RIEN dans le finalize. finalize n'est pas
l'équivalent du destructeur C++.
Si tu veux fermer correctement des connections, appelle une méthode pour
le faire.
dans un autre registre, mais toujours avec tomcat:
je me suis aperçu qu'un simple appel dans une classe a
System.exit()... arretait tout simplement tomcat ! y a t'il moyen de
bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai
jamais essaye !! :)
Ouai très étrange. Cela se règle peut-être en paramétrant le security
manager :
http://jakarta.apache.org/tomcat/tomcat-4.0-doc/security-manager-howto.html
hello, il me semble avoir des problèmes avec finalize() lors de la fermeture d'un tomcat (style shutdown.sh) : cette méthode ne semble pas appelée !
avez vous constaté le meme problème ? peut on le résoudre ?
oui , tres simplement, NE JAMAIS RIEN CODER dans la methode finalize().... comme cela zip, fini les ennuis... dans le contexte J2EE ou en dehors cette methode est dangereuse...
effectivement, mais dans ce cas comment effectuer un traitement (style fermer proprement des Connection en cas d'arret de tomcat ?)
finalize est appelée par le GC avant de libérer l'objet. Donc on ne peut pas prédire quand cette méthode va être appelée, cela dépend de la JVM, de la mémoire disponible ...
Et les objets peuvent très bien ne pas être "garbage collectés". Lorsque la JVM se termine, la mémoire est retournée en masse à l'OS, sans que les objets ne soient "garbage collectés". Enfin ca doit dépendre de la JVM mais c'est souvent comme ca. Donc, comme le dit Jerome : RIEN dans le finalize. finalize n'est pas l'équivalent du destructeur C++.
Si tu veux fermer correctement des connections, appelle une méthode pour le faire.
dans un autre registre, mais toujours avec tomcat: je me suis aperçu qu'un simple appel dans une classe a System.exit()... arretait tout simplement tomcat ! y a t'il moyen de bloquer ceci ?
tiens donc ? cela me parait etonnant, mais je dois dire que je n'ai jamais essaye !! :)
Ouai très étrange. Cela se règle peut-être en paramétrant le security manager : http://jakarta.apache.org/tomcat/tomcat-4.0-doc/security-manager-howto.html
Cédric
Manu
Joe wrote:
effectivement, mais dans ce cas comment effectuer un traitement (style fermer proprement des Connection en cas d'arret de tomcat ?)
Tu peux mettre ton code dans la méthode destroy() d'une servlet initialisée au démarrage de Tomcat.
-- Manu
Joe wrote:
effectivement, mais dans ce cas comment effectuer un traitement (style
fermer proprement des Connection en cas d'arret de tomcat ?)
Tu peux mettre ton code dans la méthode destroy() d'une servlet
initialisée au démarrage de Tomcat.
effectivement, mais dans ce cas comment effectuer un traitement (style fermer proprement des Connection en cas d'arret de tomcat ?)
Tu peux mettre ton code dans la méthode destroy() d'une servlet initialisée au démarrage de Tomcat.
-- Manu
Erwan David
Cédric Chabanois écrivait :
finalize est appelée par le GC avant de libérer l'objet. Donc on ne peut pas prédire quand cette méthode va être appelée, cela dépend de la JVM, de la mémoire disponible ...
Et les objets peuvent très bien ne pas être "garbage collectés". Lorsque la JVM se termine, la mémoire est retournée en masse à l'OS, sans que les objets ne soient "garbage collectés". Enfin ca doit dépendre de la JVM mais c'est souvent comme ca. Donc, comme le dit Jerome : RIEN dans le finalize. finalize n'est pas l'équivalent du destructeur C++.
Si tu veux fermer correctement des connections, appelle une méthode pour le faire.
On peut définir un thread qui sera appelé à la fermeture du système aussi.
finalize est appelée par le GC avant de libérer l'objet. Donc on ne
peut pas prédire quand cette méthode va être appelée, cela dépend de
la JVM, de la mémoire disponible ...
Et les objets peuvent très bien ne pas être "garbage
collectés". Lorsque la JVM se termine, la mémoire est retournée en
masse à l'OS, sans que les objets ne soient "garbage collectés".
Enfin ca doit dépendre de la JVM mais c'est souvent comme ca.
Donc, comme le dit Jerome : RIEN dans le finalize. finalize n'est pas
l'équivalent du destructeur C++.
Si tu veux fermer correctement des connections, appelle une méthode
pour le faire.
On peut définir un thread qui sera appelé à la fermeture du système aussi.
finalize est appelée par le GC avant de libérer l'objet. Donc on ne peut pas prédire quand cette méthode va être appelée, cela dépend de la JVM, de la mémoire disponible ...
Et les objets peuvent très bien ne pas être "garbage collectés". Lorsque la JVM se termine, la mémoire est retournée en masse à l'OS, sans que les objets ne soient "garbage collectés". Enfin ca doit dépendre de la JVM mais c'est souvent comme ca. Donc, comme le dit Jerome : RIEN dans le finalize. finalize n'est pas l'équivalent du destructeur C++.
Si tu veux fermer correctement des connections, appelle une méthode pour le faire.
On peut définir un thread qui sera appelé à la fermeture du système aussi.