2010-04-15 23 views
2

[Mise à jour] a résolu le problème en générant une nouvelle web.config. L'erreur possible était le deuxième point final ("mex"). [Mise à jour /]WCF wsHttpBinding « Il n'y avait pas de canal qui pourrait accepter le message avec l'action »

J'ai un webservice dans IIS.

J'essaie d'appeler une fonction, mais je reçois un errormessage comme:

Il n'y avait pas de canal qui pourrait accepter le message avec l'action « http://Datenlotsen.Cyquest/ICyquestService/ValidateSelfAssessment »

Je l'hébergement dans un IIS le site web standard. Là, j'ai créé un répertoire virtuel nommé "CyQuestwebservice". Pour la configuration côté client, j'utilise l'interface utilisateur Soap. Cet outil génère la configuration du client à partir du fichier wsdl.

mon webconfig ressemble à ceci, pouvez-vous me aider ?:

<system.serviceModel> 
    <extensions> 
     <behaviorExtensions> 
     <add name="wsdlExtensions" type="WCFExtras.Wsdl.WsdlExtensionsConfig, WCFExtras, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" /> 
     </behaviorExtensions> 
    </extensions> 
    <services> 
     <service behaviorConfiguration="CyquestWebService.Service1Behavior" 
     name="CyquestWebService.CyquestService"> 
     <endpoint address="" behaviorConfiguration="EndPointBehavior" 
      binding="wsHttpBinding" bindingNamespace="http://Datenlotsen.Cyquest" 
      contract="CyquestWebService.ICyquestService"> 
      <identity> 
      <dns value="localhost" /> 
      </identity> 
     </endpoint> 
     <endpoint address="mex" binding="mexHttpBinding" bindingNamespace="http://Datenlotsen.Cyquest" 
      contract="IMetadataExchange" /> 
     </service> 
    </services> 
    <behaviors> 
     <endpointBehaviors> 
     <behavior name="EndPointBehavior" > 
      <wsdlExtensions location="http://wssdev04.datenlotsen.intern/Cyquestwebservice/CyquestService.svc" singleFile="True"/> 
     </behavior> 
     </endpointBehaviors> 
     <serviceBehaviors> 
     <behavior name="CyquestWebService.Service1Behavior"> 
      <serviceMetadata httpGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    </system.serviceModel> 
    <system.diagnostics> 
     <sources> 
     <source name="System.ServiceModel" 
       switchValue="Information, ActivityTracing" 
       propagateActivity="true"> 
      <listeners> 
      <add name="traceListener" 
       type="System.Diagnostics.XmlWriterTraceListener" 
       initializeData= "c:\log\Traces.svclog" /> 
      </listeners> 
     </source> 
     </sources> 
    </system.diagnostics> 
</configuration> 
+0

Comment hébergez-vous ce service? Dans IIS? Sous quel répertoire virtuel, à quelle adresse? Comment vous connectez-vous à ce service ?? Montrez-nous la configuration côté client, aussi! –

Répondre

0

résolu le problème en générant une nouvelle web.config. L'erreur possible était le deuxième point final ("mex").

0

Essayez le réglage « Passer Action SOAP » true dans la « demande Propriétés ».

J'ai eu un wsHttpBinding d'essai d'émission similaire en utilisant SoapUI.