Benutzer mit den meisten Antworten
WCF auf IIS 8.0 -> There was no channel actively listening

Frage
-
Hallo,
ich verwende einen WCF-Dienst (über Ajax soll E-Mail-Erinnerung gesendet werden) auf dem IIS 7.5 ohne Probleme. Nun beabsichtigte ich auf Windows Server 2012 zu wechseln. Die ASP.NET-Seiten funktionieren ohne Probleme. Nur der WCF-Dienst versagt auf dem neuen Server den Dienst.
Clientseitig erhalte ich die Fehlermeldung:
Server Error in '/' Application.
The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.Requested URL: /service.svc/erinnerung'
Serverseitig ist dem Event-Log folgendes zu entnehmen:
WebHost failed to process a request.
Sender Information: System.ServiceModel.Activation.HostedHttpRequestAsyncResult/41231350
Exception: System.Web.HttpException (0x80004005): There was no channel actively listening at 'https://www.[Domain].com/service.svc/erinnerung'. This is often caused by an incorrect address URI. Ensure that the address to which the message is sent matches an address on which a service is listening. ---> System.ServiceModel.EndpointNotFoundException: There was no channel actively listening at 'https://www.[Domain].com/service.svc/erinnerung'. This is often caused by an incorrect address URI. Ensure that the address to which the message is sent matches an address on which a service is listening.
at System.ServiceModel.Activation.HostedHttpTransportManager.HttpContextReceived(HostedHttpRequestAsyncResult result)
at System.ServiceModel.Activation.HostedHttpRequestAsyncResult.HandleRequest()
at System.ServiceModel.Activation.HostedHttpRequestAsyncResult.BeginRequest()
at System.Runtime.AsyncResult.End[TAsyncResult](IAsyncResult result)
at System.ServiceModel.Activation.HostedHttpRequestAsyncResult.End(IAsyncResult result)
Process Name: w3wp
Process ID: 3508Ich habe bspw. fehlende Roles/Features nachträglich installiert (wie unter http://stackoverflow.com/questions/11116134/wcf-on-iis8-svc-handler-mapping-doesnt-work) angegeben. Also .NET 3.5 und 4.5 Features sind nun vollständig drauf. Brachte aber nichts. Was könnte die Ursache sein? (wie gesagt, unter IIS 7.5 funktioniert es ohne Probleme).
Möglicherweise hilft auch folgendes aus der web.config:
<bindings> <wsHttpBinding> <binding name="AjL" maxBufferPoolSize="1000000000" maxReceivedMessageSize="100000000" allowCookies="true" messageEncoding="Mtom"> <security mode="Transport"> <transport clientCredentialType="None"/> </security> </binding> </wsHttpBinding> </bindings> <behaviors> <serviceBehaviors> <behavior name="Lga"> <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/> <serviceDebug includeExceptionDetailInFaults="true"/> </behavior> <behavior name=""> <serviceMetadata httpGetEnabled="true"/> <serviceDebug includeExceptionDetailInFaults="false"/> </behavior> </serviceBehaviors> </behaviors> <serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true"/> <services> <service name="Berechnen.AjLg" behaviorConfiguration="Lga"> <endpoint name="n1" address="" binding="wsHttpBinding" bindingConfiguration="Lga" contract="Berechnen.IContract"/> <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange"/> </service> </services>
Ich danke für Tipps im Voraus.
Grüße
Ron- Bearbeitet Ronald Siegel Freitag, 1. Februar 2013 01:11 Korrektur
Antworten
-
Ich habe für mich eine Lösung gefunden, obgleich ich es überhaupt nicht verstehe. Ich habe in der web.config die entsprechenden Knoten entfernt, die wsHttpBinding deklarieren und auch den Service-Knoten, der das wsHttpBinding eingebunden hat. Aber diese Lösung bleibt für mich unverständlich!
- Als Antwort markiert Ronald Siegel Montag, 4. Februar 2013 01:12
Alle Antworten
-
Hallo,
Ergänzung: Was mich wundert ist, dass ich den WCF-Dienst (auf IIS 8.0) ohne Probleme per Dienstverweis in einer Anwendung hinzufügen kann und er auch dort funktioniert. In der web.config ist - wie auch schon zuvor auf dem IIS 7.5 - die ASP.NET-Kompatibilität eingestellt:
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
Aber immer noch bin ich ratlos, warum aus Ajax heraus dieser Dienst nun Probleme bereitet... -
Ich habe für mich eine Lösung gefunden, obgleich ich es überhaupt nicht verstehe. Ich habe in der web.config die entsprechenden Knoten entfernt, die wsHttpBinding deklarieren und auch den Service-Knoten, der das wsHttpBinding eingebunden hat. Aber diese Lösung bleibt für mich unverständlich!
- Als Antwort markiert Ronald Siegel Montag, 4. Februar 2013 01:12