0 votes

Un service WCF consommant un autre service WCF hébergé dans IIS7

Nous avons quelques problèmes pour déployer nos services WCF dans IIS7. Nous avons deux services : DataAccess et BusinessLogic (noms d'exemple). Les clients se connectent à BusinessLogic qui se connecte ensuite à DataAccess. Le client de test WCF nous permet de consommer le service DataAccess sans erreur. Cependant, lorsque nous essayons d'appeler la même fonction depuis le service BusinessLogic, l'appel est interrompu et renvoie l'erreur suivante :

An error occurred while receiving the HTTP response to http://10.10.200.58/CRM/CS.ITS.CSC.CRM.CRMService.svc/basic. This could be due to the service endpoint binding not using the HTTP protocol. This could also be due to an HTTP request context being aborted by the server (possibly due to the service shutting down). See server logs for more details.

Server stack trace: 
   at System.ServiceModel.Channels.HttpChannelUtilities.ProcessGetResponseWebException(WebException webException, HttpWebRequest request, HttpAbortReason abortReason)
   at System.ServiceModel.Channels.HttpChannelFactory.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout)
   at System.ServiceModel.Channels.RequestChannel.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at ICRMService.GetAccount(Int32 AccountId)
   at CRMServiceClient.GetAccount(Int32 AccountId)

Lorsqu'il est exécuté localement à l'aide de Visual Studio 2008, tout fonctionne sans problème. Ce n'est que lorsque nous déployons vers IIS que le problème survient.

Sur le serveur, nous avons reconfiguré toutes les configurations d'applications et nous nous sommes assurés que les adresses étaient accessibles. Nous pouvons voir tous les WSDLs via le navigateur. Nous avons également activé le traçage sur le serveur et en utilisant le SvcTraceViewer nous avons obtenu l'erreur suivante :

Failed to lookup a channel to receive an incoming message. Either the endpoint or the SOAP action was not found.

Quelqu'un a-t-il de l'expérience dans la publication de services WCF qui appellent un autre service WCF dans un environnement IIS7 ? Toute aide serait grandement appréciée.

-2voto

Eliah Kagan Points 745

Il s'avère que c'était les autorisations IIS.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X