2010-01-07 3 views
1

J'ai un formulaire Web qui envoie des données à un service tiers en utilisant cette bibliothèque de http://www.xml-rpc.net.Pourquoi est-ce que je reçois des messages de connexion annulés?

Récemment, le formulaire a commencé à émettre des exceptions. J'ai essayé d'activer trace dans le web.config pour voir quelles données vont et viennent, mais cela semble résoudre le problème, ou au moins arrêter l'éjection de l'exception.

Des idées ce qui pourrait se passer, ou comment je peux diagnostiquer cela sans apparemment résoudre le problème?

Le code trace:

<system.diagnostics> 
    <trace autoflush="true" /> 
    <sources> 
     <source name="System.Net"> 
      <listeners> 
       <add name="WebPageTraceListener" 
        type="System.Web.WebPageTraceListener, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> 
      </listeners> 
     </source> 
    </sources> 
    <switches> 
     <add name="System.Net" value="Verbose" /> 
    </switches> 
</system.diagnostics> 

Le message d'exception:

System.Net.Sockets.SocketException: Une connexion établie a été abandonnée par le logiciel dans votre machine hôte [SocketException (0x2745): Une connexion établie a été annulée par le logiciel de votre machine hôte] System.Net.Sockets.Socket.Receive (tampon Byte [], décalage Int32, taille Int32, SocketFlags socketFlags) +73 System.Net.Sockets.NetworkStrea m.Read (tampon Byte [], décalage Int32, taille Int32) +131 [IOException: impossible de lire les données de la connexion de transport: une connexion établie a été annulée par le logiciel de votre machine hôte.] System.Net.ConnectStream .Read (tampon byte [], Int32 offset, taille Int32) 313 System.Xml.XmlTextReaderImpl.ReadData() +444 System.Xml.XmlTextReaderImpl.EatWhitespaces (BufferBuilder sb) 285 System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace() 74 System.Xml.XmlTextReaderImpl.ParseDocumentContent() 187 System.Xml.XmlTextReaderImpl.Read() 151 System.Xml.XmlLoader.LoadDocSequence (XmlDocument parentDoc) 48 System.Xml.XmlLoader.Load (Doc XmlDocument, Lecteur XmlReader, Boolean preserveWhitespace) +129 System.Xml.XmlDocument.Load (lecteur XmlReader) +108 System.Xml.XmlDocument.Load (flux Instream) +91 CookComputing.XmlRpc.XmlRpcSerializer.DeserializeResponse (Stream stm, type svcType) +189 [XmlRpcIllFormedXmlException: Réponse à partir du serveur ne contient pas XML valide.] CookComputing.XmlRpc.XmlRpcSerializer.DeserializeResponse (flux stm, type svcType) +238 CookComputing.XmlRpc.XmlRpcClientProtocol.ReadResponse (req XmlRpcRequest, WebResponse webResp, Stream respStm, type returnType) +111 CookComputing.XmlRpc.XmlRpcClientProtocol.Invoke (Object clientObj, MethodInfo mi, Paramètres Object []) +762 CookComputing.XmlRpc.XmlRpcClientProtocol.Invoke (Paramètres MethodInfo mi, Object []) +11 XmlRpcProxyfd5eb8e7-d 547-4544-bd38-7d6dc1366a49.login (nom d'utilisateur String, mot de passe Chaîne) +120

+0

Cela ressemble à un problème de pare-feu – Xaqron

Répondre

0

Je pense que la clé peut être près du fond:

+129 System.Xml.XmlDocument.Load(XmlReader reader) +108 System.Xml.XmlDocument.Load(Stream inStream) +91 CookComputing.XmlRpc.XmlRpcSerializer.DeserializeResponse(Stream stm, Type svcType) +189 [XmlRpcIllFormedXmlException: Response from server does not contain valid XML.] 

Votre serveur distant répond avec un invalide document XML, et il semble que votre connexion est en train de mourir à cause de cela.