PROBLÈME : Problèmes courants liés au serveur proxy et au pare-feu avec les services Web MapPoint

Traductions disponibles Traductions disponibles
Numéro d'article: 330221 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Symptômes

MapPoint .NET est un service Web basé sur HTTP distribué sur TCP/IP. Le fonctionnement, la connectivité et les performances de MapPoint .NET peuvent être affectés par l'environnement de serveur proxy et de pare-feu. Les applications clientes accèdent au service par le biais de cet environnement. Les erreurs suivantes sont associées aux problèmes au niveau du serveur proxy et du pare-feu. Cet article décrit des solutions possibles pour ces erreurs.

Vous pouvez recevoir l'une des erreurs suivantes d'une application cliente qui accède au service Web MapPoint .NET.

Erreur 1
« La connexion sous-jacente a été fermée : Le nom distant n'a pas pu être résolu. »
Erreur 2
« La demande a échoué avec l'état HTTP 502 : Erreur du proxy »
Erreur 3
« La demande a échoué avec le message d'erreur : -- Erreur de serveur dans l'application '/Find-20'.
--------------------------------------------------------------------------------
Format de demande non reconnu.

Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception : System.InvalidOperationException : Format de demande non reconnu. »
Erreur 4
« La demande a échoué avec l'état HTTP 407 : Authentification proxy requise. Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception : System.Net.WebException : La demande a échoué avec l'état HTTP 407 : Authentification proxy requise. »

Cause

Erreur 1
« La connexion sous-jacente a été fermée : Le nom distant n'a pas pu être résolu. »
Cette erreur se produit en général si l'environnement réseau route le trafic à travers un serveur proxy HTTP et que l'application cliente ne peut pas lire automatiquement les paramètres de proxy du Registre. Il est plus probable que le problème se produise si le client du service Web est une application Web ASP.NET, dans la mesure où les applications Web ne s'exécutent pas en général sur un compte d'utilisateur interactif. Par conséquent, les applications Web n'ont pas toujours accès aux paramètres du proxy du navigateur dans le Registre.

Erreur 2
« La demande a échoué avec l'état HTTP 502 : Erreur du proxy »
Cette erreur peut se produire si MapPoint .NET est situé derrière un serveur proxy ou un pare-feu qui limite la taille de paquet SOAP ou dont la valeur de délai d'attente est inférieure au temps nécessaire pour le retour d'une requête importante. Par exemple, un appel à MapPoint .NET pour afficher une carte avec un grand nombre de clics-infos provoque le retour d'un paquet SOAP de grande taille et le délai de traitement de la demande est alors supérieur à celui autorisé par la valeur du délai d'attente. Ceci peut provoquer l'échec de la demande, selon la configuration de proxy et de pare-feu du réseau.

Erreur 3
« La demande a échoué avec le message d'erreur : -- Erreur de serveur dans l'application '/Find-20'.
--------------------------------------------------------------------------------
Format de demande non reconnu.

Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception : System.InvalidOperationException : Format de demande non reconnu. »
Cette erreur peut se produire si un proxy ou un pare-feu est configuré pour supprimer les en-têtes inconnus.

Erreur 4
« La demande a échoué avec l'état HTTP 407 : Authentification proxy requise. Description : Une exception non gérée s'est produite au moment de l'exécution de la demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.

Détails de l'exception : System.Net.WebException : La demande a échoué avec l'état HTTP 407 : Authentification proxy requise. »
Cette erreur se produit si le serveur proxy requiert l'authentification d'un compte d'utilisateur du domaine. Cette erreur se produit en général si le client MapPoint .NET est une application ASP.NET. Les applications ASP.NET sont généralement exécutées dans le contexte de sécurité d'un compte d'utilisateur local qui ne dispose pas d'autorisations sur le réseau et le serveur proxy.

Résolution

Erreur 1


Pour résoudre cette erreur, appliquez l'une des options suivantes :

  1. Configurez le serveur proxy dans Machine.config ou dans Web.config.
    1. Pour Machine.config, vous devez modifier l'élément defaultProxy comme suit :
      <defaultProxy>
           <proxy
                usesystemdefault = "false"
                proxyaddress="http://proxyserver:port"
                bypassonlocal="true"
           />
      </defaultProxy>
      				
    2. Pour Web.config, ajoutez l'élément defaultProxy comme enfant de l'élément System.net.
  2. Configurez le serveur proxy comme illustré dans le code ci-dessous.

    Microsoft Visual Basic .NET
    Dim myProxy As New WebProxy("http://proxyserver:port", True)
    Dim myFindService As New FindServiceSoap()
    myFindService.Proxy = myProxy
    				
    Microsoft C#
    WebProxy myProxy = new WebProxy("http://proxyserver:port",true);
    FindServiceSoap myFindService = new FindServiceSoap();
    myFindService.Proxy = myProxy;
    				
    Remarque Vous devez définir le proxy pour chaque service SOAP MapPoint .NET appelé (Common (Commun), Find (Rechercher), Renderer (Rendu) et Route (Route)). Vous devez également utiliser l'instruction IMPORTS pour Visual Basic .NET ou la directive Using pour C# pour référencer l'espace de noms « System.Net » pour avoir accès à la classe WebProxy.
Erreur 2


Pour résoudre cette erreur, procédez comme suit :
  • Contournez le serveur proxy, puis configurez-le pour accepter des paquets SOAP de grande taille.
  • Augmentez la valeur du délai d'attente pour les demandes.
  • Limitez les données demandées.
Chaque solution peut être différente. La solution correcte dépend de l'environnement réseau que vous utilisez pour appeler le service Web. Avec l'aide de votre administrateur réseau, déterminez les paramètres spécifiques requis pour l'envoi des paquets SOAP au service MapPoint .NET et leur réception de ce service.

Erreur 3


Avec l'aide de votre administrateur réseau, configurez correctement votre pare-feu pour accepter les en-têtes SOAP. Dans certains cas, il vous suffit d'activer la case à cocher Supprimer les en-têtes inconnus dans la configuration du pare-feu.

Erreur 4


Configurez le serveur proxy comme illustré dans le code ci-dessous.

Visual Basic .NET
Dim myProxy As New WebProxy("http://proxyserver:port", True)
myProxy.Credentials = New NetworkCredential("username", "password", "domain")
Dim myFindService As New FindServiceSoap()
myFindService.Proxy = myProxy
				
C#
WebProxy myProxy = new WebProxy("http://proxyserver:port",true);
myProxy.Credentials = new NetworkCredential("username", "password", "domain");
FindServiceSoap myFindService = new FindServiceSoap();
myFindService.Proxy = myProxy;
				
Remarque Vous devez définir le proxy pour chaque service SOAP MapPoint .NET appelé (Commun, Rechercher, Rendu et Route). Vous devez utiliser l'instruction IMPORTS pour Visual Basic .NET ou la directive Using pour C# pour référencer l'espace de noms « System.Net » et pour avoir accès aux classes WebProxy et NetworkCredential.

Propriétés

Numéro d'article: 330221 - Dernière mise à jour: mercredi 13 juin 2007 - Version: 2.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft MapPoint .NET 3.0
Mots-clés : 
kbprb KB330221
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com