7

WCF - There was no endpoint listening at net.tcp://myserver:9000/SearchQueryService/Querier.svc that could accept the message.

I have the net.tcp protocol enabled on the IIS application

Windows firewall is off

The net.tcp binding is set to port 9000 for the entire IIS application.

My web.config is very standard:

<system.serviceModel>
    <diagnostics>
      <messageLogging logMalformedMessages="true" logMessagesAtServiceLevel="false"
        logMessagesAtTransportLevel="true" />
    </diagnostics>
    <services>
      <service behaviorConfiguration="SearchQueryServiceBehavior" 
       name="Search.Querier.WCF.Querier">
        <endpoint address="mex" binding="mexHttpBinding" name="mexHttpEndpoint"
          contract="IMetadataExchange" />
        <endpoint binding="netTcpBinding" bindingConfiguration="" 
           name="netTcpEndpoint"
          contract="Search.Querier.WCF.IQuerier" />
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="SearchQueryServiceBehavior">

          <serviceMetadata httpGetEnabled="true"/>

          <serviceDebug includeExceptionDetailInFaults="false"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>

And this very setup works on one server but not the other... What could be the problem?

Both servers, the working and non-working one are running IIS7. The only difference is the working box is Vista64 Sp2 and non working one is W2k864.

Matt
  • 25,943
  • 66
  • 198
  • 303

4 Answers4

5

I think that you are missing the net.tcp in the "Enable Protocols" list in the advanced settings of the site.

Shiraz Bhaiji
  • 64,065
  • 34
  • 143
  • 252
0

Do you have .net 3.5 installed on the w2k864 machine? After you install it, did you run aspnet_iisreg?

Check the asp.net settings in IIS and ensure it is set to use 2.0

Can you provide any more information?

Also try to use your ip rather than a host name. e.g. 192.168.1.100 instead of myserver

Lucas B
  • 11,793
  • 5
  • 37
  • 50
0

When you browse to the service (http://myserver/SearchQueryService/Querier.svc), do you get any error messages?

I also noticed that your client is calling the net.tcp endpoint on port 9000. Does this configuration matches the IIS net.tcp configuration? In a default configuration, a call to your service should be pointed to net.tcp://myserver/SearchQueryService/Querier.svc

Ramiro Berrelleza
  • 2,254
  • 1
  • 15
  • 27
0

It is possible that there is another application configured to be listening on the same port, you can see this being mentioned here as well - https://stackoverflow.com/a/7254861/4446128, if that is the case likely both applications on the same port are not working. I wish there would be a better error message when that happen as it took me forever to figure out (I had to deal with many apps talking over net.tcp), I hope this info will be helpful for anyone who still deals with WCF.

sergeyski.com
  • 586
  • 6
  • 14