IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Services Web Discussion :

Connexion qui se ferme


Sujet :

Services Web

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 40
    Points : 37
    Points
    37
    Par défaut Connexion qui se ferme
    Bonjour,

    lors d'appels à des ws dans mon application C# .Net, j'ai souvent ce message d'erreur :
    The underlying connection was closed: A connection that was expected to be kept alive was closed by the server
    En français : La connexion sous-jacente a été fermée : Le serveur a fermé une connexion qui devait être maintenue active

    Avez vous déjà recontré ce pb ? Est-ce que ça pourrait venir de mon serveur IIS qui serait mal configuré ?

    Infos :
    -Version IIS 6.0
    - Version ASP.Net 2.0.50727

    Merci de vos réponses

  2. #2
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Comment gères tu tes connexions ? tu les ouvres/fermes bien à chaque requête, comme il est d'usage dès l'instant où on travaille en mode déconnecté ?

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  3. #3
    Membre éclairé
    Profil pro
    Ingénieur sécurité
    Inscrit en
    Février 2007
    Messages
    574
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur sécurité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2007
    Messages : 574
    Points : 751
    Points
    751
    Par défaut
    Dans IIS 6 tu peux réger la valeur du timeout. De mémoire, dans ton répertoire virtuel, sur ton dossier, tu fais un clic droit, puis properties, et quelque part là dedans tu peux régler le time out.
    Mais comme le dit Bluedeep, c'est peut-être un défaut de conception.
    A toi de voir.

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par dahtah Voir le message
    Dans IIS 6 tu peux réger la valeur du timeout.
    Le time out est celui de session. En général, tu crées une connexion DB par appel, pas par session.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 40
    Points : 37
    Points
    37
    Par défaut
    bonjour,

    désolé de répondre tard.

    je crée mon web service : MonWebService
    j'appelle ma méthode : MaWebMethode
    puis une fois que c'est terminé je fais un dispose.

    Mais mon pb se produit lors de l'appelle à ma web méthode ou plutôt dans la réponse de celui (c'est ce que je pense).

    Voici ma stack trace : il plante dans le GetWebResponse.

    at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
    at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
    at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
    at MonWebService.MaWebMethode(String codeClient, String connexion)

    Sinon au sujet du timeout, on a deux serveur qui sont reglés de la même manière au niveau du répertoire virtuel et des pools d'application. Sauf qu'il y a un des deux serveurs qui me génére ce pb et on ne sait pourquoi

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Novembre 2004
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Si la réponse n'a toujours pas été trouvée, j'ai trouvé sur un autre forum qu'en mettant la propriété "ConnectionGroupName" à une valeur aléatoire avant chaque appel au WebService ne provoquait plus cette exception. J'ai fait le test et çà fonctionne chez moi. Maintenant, si quelqun a une meilleure solution, je suis preneur...

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 40
    Points : 37
    Points
    37
    Par défaut
    Nous avons trouvé une solution pour le pb de connexion.

    Nous avons ajouté le code suivant dans le fichier reference.cs du web service. Par contre, le soucis c'est que dès que nous mettons à jour le web service, les lignes de codes sautent et il faut penser à les remettre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    protected override System.Net.WebRequest GetWebRequest(Uri uri)
            {
                HttpWebRequest webRequest = (HttpWebRequest)base.GetWebRequest(uri);
     
                webRequest.KeepAlive = false;
                webRequest.ProtocolVersion = HttpVersion.Version10;
                return webRequest;
            }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Connexion qui ne se ferme pas
    Par ch0upette dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 10/09/2007, 15h50
  2. Connexion qui ne se ferme pas
    Par ch0upette dans le forum JDBC
    Réponses: 3
    Dernier message: 03/09/2007, 16h28
  3. Réponses: 6
    Dernier message: 16/08/2006, 15h56
  4. Réponses: 15
    Dernier message: 25/09/2005, 23h31
  5. [C#] [MSDE] Connexion qui se ferme après appel de fonction
    Par trotters213 dans le forum Windows Forms
    Réponses: 11
    Dernier message: 23/03/2005, 16h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo