Click here to Skip to main content
14,934,026 members
Please Sign up or sign in to vote.
4.50/5 (2 votes)
See more:
I get this error:

There was no endpoint listening at https://xxxxxxxxxxxx/DataCacheSync.svc that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.

Inner Exception: The remote server returned an error: (404) Not Found.

From what I have read this is an issue with https. Which makes sense because this sync works fine when run on localhost which does not use https.

I am under the gun on this project and need the application to be syncing successfully by Tuesday. I have tried to use all the solutions that I found on the internet but nothing has worked. I really think it is probably something simple that I am missing in the config files.

Here is the web config for the website:

XML
<system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="authenticated">
          <serviceCredentials>
            <userNameAuthentication userNamePasswordValidationMode="MembershipProvider" membershipProviderName="EcosystemsMembershipProvider" />
          </serviceCredentials>
          <serviceMetadata httpGetEnabled="false" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
        <behavior name="default">
          <serviceMetadata httpGetEnabled="false" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <bindings>
      <basicHttpBinding>
        <binding name="secureBasicBinding">
          <security mode="Transport">
            <transport clientCredentialType="None" />
          </security>
        </binding>
      </basicHttpBinding>
      <!-- Setting maxReceivedMessageSize ensures that we do not encounter 404 errors when uploading large amounts of data -->
      <wsHttpBinding>
        <binding maxReceivedMessageSize="2147483647" name="secureWsBinding" receiveTimeout="00:10:00" sendTimeout="00:10:00">
          <security mode="Transport">
            <transport clientCredentialType="None" />
          </security>
        </binding>
        <binding maxReceivedMessageSize="2147483647" name="authenticatedWsBinding" receiveTimeout="00:10:00" sendTimeout="00:10:00">
          <security mode="Transport">
            <transport clientCredentialType="None" />
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
    <services>
      <!-- EDT services -->
      <service name="Icfi.Ecosystems.Edt.Services.Services.DataCacheSyncService" behaviorConfiguration="default">
        <endpoint binding="wsHttpBinding" bindingConfiguration="authenticatedWsBinding" contract="Icfi.Ecosystems.Synchronization.Services.Contracts.IDataCacheSyncContract" />
      </service>
      <service name="Icfi.Ecosystems.Edt.Services.Services.ProjectsService" behaviorConfiguration="default">
        <endpoint binding="wsHttpBinding" bindingConfiguration="authenticatedWsBinding" contract="Icfi.Ecosystems.Edt.Services.Contracts.IProjectsContract" />
      </service>
      <!-- Security services -->
      <service name="Icfi.Ecosystems.Security.Services.AuthenticationService" behaviorConfiguration="default">
        <endpoint binding="basicHttpBinding" bindingConfiguration="secureBasicBinding" contract="Icfi.Ecosystems.Security.Services.Contracts.IAuthenticationContract" />
      </service>
      <service name="Icfi.Ecosystems.Security.Synchronization.Services.SecurityCacheDownloadService" behaviorConfiguration="default">
        <endpoint binding="wsHttpBinding" bindingConfiguration="secureWsBinding" contract="Icfi.Ecosystems.Synchronization.Services.Contracts.IDataCacheDownloadContract" />
      </service>
      <!-- Wind services -->
      <service name="Icfi.Ecosystems.Wind.Mortality.Services.DataCacheSyncService" behaviorConfiguration="default">
        <endpoint binding="wsHttpBinding" bindingConfiguration="authenticatedWsBinding" contract="Icfi.Ecosystems.Synchronization.Services.Contracts.IDataCacheSyncContract" />
      </service>
    </services>
    <serviceHostingEnvironment>


And here is the app config for the application doing the syncing:

XML
<system.serviceModel>
    <bindings>
      <wsHttpBinding>
        <binding name="default"
                 closeTimeout="00:01:00"
                 openTimeout="00:01:00"
                 receiveTimeout="00:10:00"
                 sendTimeout="00:10:00"
                 bypassProxyOnLocal="false"
                 transactionFlow="false"
                 hostNameComparisonMode="StrongWildcard"
                 maxBufferPoolSize="2147483647"
                 maxReceivedMessageSize="2147483647"
                 messageEncoding="Text"
                 textEncoding="utf-8"
                 useDefaultWebProxy="true"
                 allowCookies="false">
          <readerQuotas maxDepth="32"
                        maxStringContentLength="8192"
                        maxArrayLength="16384"
                        maxBytesPerRead="4096"
                        maxNameTableCharCount="16384" />
          <reliableSession ordered="true"
                           inactivityTimeout="00:10:00"
                           enabled="false" />
          <security mode="Transport">
            <transport clientCredentialType="None"/>
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
    <client>
      <!-- Local security daemon -->
      <endpoint address="net.pipe://localhost/icfi/ecosystems/Authenticate"
                binding="netNamedPipeBinding"
                contract="Icfi.Ecosystems.Security.Services.Contracts.IAuthenticationContract" />
      <endpoint address="net.pipe://localhost/icfi/ecosystems/User"
                binding="netNamedPipeBinding"
                contract="Icfi.Ecosystems.Security.Services.Contracts.IUserContract" />ent>
      <endpoint address="https://ecosystems.icfwebservices.com/Services/WindEnergy/DataCacheSync.svc"
                binding="wsHttpBinding"
                bindingConfiguration="default"
                contract="Icfi.Ecosystems.Synchronization.Services.Contracts.IDataCacheSyncContract" />
    </client>
  </system.serviceModel>
Posted
Updated 4-May-12 12:58pm
v4

This may be wcf transport security issue. You may have to check different security mode for WCF application in the remote(WCF container) server.

XML
<bindings>
  <basicHttpBinding>
    <binding name="SecurityByTransport">
      <security mode="Transport">
        <transport clientCredentialType="Windows" />
       </security>
     </binding>
  </basicHttpBinding>
</bindings>


Try different ClientCredentialType.Here is the list of different types of settings HttpClientCredentialType[^]

In addition check any security impersonation that you might need in order to access the service.ASP.NET Impersonation[^]
   
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)




CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900