UnhandledException [Résolu]

Messages postés
3
Date d'inscription
mercredi 10 septembre 2003
Dernière intervention
30 mai 2007
- - Dernière réponse : harael
Messages postés
3
Date d'inscription
mercredi 10 septembre 2003
Dernière intervention
30 mai 2007
- 30 mai 2007 à 14:25
Salut,

Tout d'abord le contexte. Je developpe un site en asp.net - c# 2.0 avec IIS 6. J'utilise l'authentification par formulaire. Sur certaines pages, j'utilise Ajax et plus particulierement Ajax control tool kit pour son calendrier.

Lors des tests, de temps en temps, lorsque l'on clique sur un bouton chargé d'afficher le calendrier du toolkit, l'application se bloquait ; l'icone du bouton du calendrier disparassait et on ne pouvait plus rien faire.

En regardant dans l'observateur d'événements, j'ai put voir que le pool d'application de mon site a été arreté à cause d'une erreur non gérée(System.ObjectDisposedException).

J'ai donc ajouter à mon site un httpModule pour récupérer plus d'information sur le probleme. Voici ce que j'ai obtenu :

-------------------------------------------------------------------
Type de l'événement*: Erreur
Source de l'événement*: ASP.NET 2.0.50727.0
Catégorie de l'événement*: Aucun
ID de l'événement*: 0
Date*: 23/05/2007
Heure*: 09:52:38
Utilisateur*: N/A
Ordinateur*: #####
Description*:
La description pour l'ID d'événement ( 0 ) dans la source (ASP.NET 2.0.50727.0) est introuvable. L'ordinateur local n'a peut-être pas les informations de

Registre ou les librairies requises pour afficher les messages émanant d'un ordinateur distant. Vous pourrez peut-être utiliser l'option /AUXSOURCE= pour

récupérer cette description. Reportez-vous aux rubriques Aide et support pour plus de détails. Les informations suivantes font partie de l'événement :

UnhandledException logged by UnhandledExceptionModule.dll:

appId=/LM/W3SVC/1/Root/#####

type=System.ObjectDisposedException

message=Le handle sécurisé a été fermé

stack=
à System.Runtime.InteropServices.SafeHandle.InternalFinalize()
à System.Runtime.InteropServices.SafeHandle.Dispose(Boolean disposing)
à System.Runtime.InteropServices.SafeHandle.Finalize()
-------------------------------------------------------------------

Suite à mes recherches, j'en suis arrivé à plusieurs hypotheses :
- Si l'erreur est non gérée s'est parce qu'il s'agit d'une requete faite à partir d'ajax et plus particulierement du calendrier.
- L'authentification par utilisateur pourrait etre lié à ce souci (Le handle sécurisé a été fermé).

Quelqu'un aurait il une idée sur la question ?
Afficher la suite 
A voir également:

Votre réponse

4 réponses

Meilleure réponse
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
3
Merci
effetivement ca pourrais bien venir de ton AS 400. d'après le dernier commentaire :

"So if you download a big hotFix, maybe round 70 Mb, this is the code: S21917, you can resolve the issue without change anything into your code.
Kind regards."

il existe un fix, mais ca n'a pas l'air d'etre un numéro de fix de microsoft (il commence d'habitude par kb) et google ne me dit rien sur ce numéro, mais peut-être que tu peux contacter l'auteur du comment via son blog :-)

<hr />Cyril - MSP - MCTS ASP.net & SQL

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 99 internautes ce mois-ci

Commenter la réponse de jesusonline
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
Bonjour,

après une très rapide recherche sur l'exception : http://support.microsoft.com/kb/918462 tu peux toujours essayer peut etre que ca peut améliorer les choses. En tout cas d'après ce que j'ai lu sur le net ca vient des sockets ... 

que ce soit une requete ajax ou non n'a rien a voir avec le problème, de toute facon ASP.net n'a quasi aucun moyen de savoir que c'est une requete Ajax ...
que ca vienne de l'authentication, j'ai des doutes, ici le sécurisé parle du handler c'est donc au niveau de l'os ("Safe handle has been closed" pour le message d'erreur en anglais)

je pense donc que c'est soit une config au niveau de IIS, soit un httpmodule spécifique qui touche de trop près aux request et donc aux sockets soit tu as un truc très peu catholique dans ta page :-) mais il faudrais savoir un peu plus d'ou provient l'erreur pour en dire plus.

<hr />Cyril - MSP - MCTS ASP.net & SQL
Commenter la réponse de jesusonline
Messages postés
3
Date d'inscription
mercredi 10 septembre 2003
Dernière intervention
30 mai 2007
0
Merci
Merci pour ta réponse,

Tu m'as donné de nouveaux axes de recherche, et j'ai trouvé quelque chose. Mon probleme serait peut etre dut au Provider IBM pour l'acces à une base AS400 : http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=115170.

Je vais tester le fix (des que j'en trouve le temps) et je te tiendrais au courant.

Merci encore, ce bug est plutot complexe, et de tout les forums où j'ai posté, tu es le seul jusqu'a maintenant a t'y etre intéressé.
Commenter la réponse de harael
Messages postés
3
Date d'inscription
mercredi 10 septembre 2003
Dernière intervention
30 mai 2007
0
Merci
Il s'agissait bien de ça. Meme pas besoin du fix. La derniere version du provider .net IBM suffit.

Affaire classée ;)
Commenter la réponse de harael

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.