Bonjour, je suis débutant java, mais plein de bonne volonté, j'espère pouvoir trouver de l'aide ou/et des conseils ici. J'explique mon problème :
je suis en train de réaliser une servlet qui déclenche des sockets pendant son execution. Typiquement : un utilisateur utilise la servlet via son navigateur web, la servlet ouvre une socket vers une autre machine pour recuperer des infos et les traiter, puis ferme la socket et renvoit le resultat final sur le browser de l'utilisateur.
Le problème est : l'utilisateur se connecte à la servlet, lance le traitement (la servlet ouvre donc la fameuse socket vers une machine), et là, l'utilisateur en a marre, c'est trop long, ferme son navigateur... la servlet est coupée brutalement, et la socket n'a pas été fermée (dans mon implémentation en tout cas). Dans mon cas, ceci est bloquant car l'application avec laquelle ma servlet communique reste bloquée tant que la socket n'est pas fermée. Je ne peut donc plus relancer de traitement.
Y a-t-il un moyen de fermer la socket en cas de fermeture inopinée de la servlet?
d'avance merci
Damien
(j'envois le code si c'est necessaire)
Partager