none
WCF returns There was no endpoint listening at xxx that could accept the message. RRS feed

  • Question

  • I have WCF service using https. I installed the service on Server A and client app on Server B. There is no problem to access it. Server A and Server B use the same proxy server. Server C uses different proxy server and has more striction to access it. Server A and Server B cannot directly access Server C. They have to use bridge server D to access C. That means Server A and Server B can access server D. Server C can access server D.

    I installed the WCF service on Server C. I got the following error. I know my problem related to firewall, proxy server, and security stuff, but I don't know how to solve it. I cannot turn off firewall in this case. It seems like some port is not open? Port 443 is open since I can browse the service installed on Server C with no problem. Any idea?

    Thanks in advance!!!

    System.ServiceModel.EndpointNotFoundException: There was no endpoint listening at https://serverC.company.domain/WCFService/Service.svc that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 10.92.50.60:443
       at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
       at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
       --- End of inner exception stack trace ---
       at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
       at System.Net.HttpWebRequest.GetRequestStream()
       at System.ServiceModel.Channels.HttpOutput.WebRequestHttpOutput.GetOutputStream()
       --- End of inner exception stack trace ---

    Server stack trace:
       at System.ServiceModel.Channels.HttpOutput.WebRequestHttpOutput.GetOutputStream()
       at System.ServiceModel.Channels.HttpOutput.Send(TimeSpan timeout)
       at System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.SendRequest(Message message, TimeSpan timeout)
       at System.ServiceModel.Channels.RequestChannel.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.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
       at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

    Thursday, October 3, 2013 9:54 PM

Answers

  • <copied>

    Port 443 is open since I can browse the service installed on Server C with no problem. Any idea?

    <end>

    Maybe the port is only open to certain IP(s), and it is closed to others. A firewall can filter traffic by IP to block or allow inbound traffic.

    • Marked as answer by s liu Friday, October 4, 2013 10:45 PM
    Friday, October 4, 2013 3:24 AM
  • I got the answer from my IT team. The firewall blocks the port 443.
    • Marked as answer by s liu Friday, October 4, 2013 10:45 PM
    Friday, October 4, 2013 10:44 PM

All replies

  • <copied>

    Port 443 is open since I can browse the service installed on Server C with no problem. Any idea?

    <end>

    Maybe the port is only open to certain IP(s), and it is closed to others. A firewall can filter traffic by IP to block or allow inbound traffic.

    • Marked as answer by s liu Friday, October 4, 2013 10:45 PM
    Friday, October 4, 2013 3:24 AM
  • I browsed the service on Server C and then ran my client application. I did both on the same box. So if the same box can browse the service, that means port 443 is not blocked on this box. Am I right?
    Friday, October 4, 2013 4:47 PM
  • <copied>

    I browsed the service on Server C and then ran my client application. I did both on the same box. So if the same box can browse the service, that means port 443 is not blocked on this box. Am I right?

    <end>

    If you did it on the same box with client running of your application and browser accessing the service (all components on the same box), then the traffic never left the box over a network so a firewall would be involved. You were using the Loop Back IP and traffic never left the box it was looped back to the box.

    http://en.wikipedia.org/wiki/Localhost

    A firewall stops inbound or outbound traffic to/from the machine when the traffic is traveling over a network.  You are not using a network if everything is local to the box.

    Friday, October 4, 2013 7:07 PM
  • I think you misundertand me. My client applicaiton on Server B and my WCF service on Server C are different boxes. I used IE browser on Server B to browse WCF service on Server C. I didn't use https://localhost/... to browse.

    What I meant is I can browse my service on Server C using IE on Server B, but my client application on Server B cannot access wcf service on Server C.

    Friday, October 4, 2013 9:57 PM
  • I got the answer from my IT team. The firewall blocks the port 443.
    • Marked as answer by s liu Friday, October 4, 2013 10:45 PM
    Friday, October 4, 2013 10:44 PM

  • I am able to browse the webservice URL without any issue, But my client application is not working and it says "There was no endpoint listening at ". This is happening on the same server.

    I have tested client application in another server and it is working fine and it is not working in one server.

    So this could be related to firewall issue?


    • Edited by Venkateswaran Thursday, August 20, 2015 3:09 PM More detail
    Thursday, August 20, 2015 2:53 PM

  • I am able to browse the webservice URL without any issue, But my client application is not working and it says "There was no endpoint listening at ". This is happening on the same server.

    I have tested client application in another server and it is working fine and it is not working in one server.

    So this could be related to firewall issue?


    It is possible. But most likely, the WCF client is pointing to a WCF service that is not at the specified endpoint location, which is the WCF client's responsibility.

    Thursday, August 20, 2015 5:16 PM
  • How to test this and what is the solution for this issue.
    Friday, August 21, 2015 12:57 PM
  • How to test this and what is the solution for this issue.

    Fiddler (free)
    Friday, August 21, 2015 1:27 PM