Differences in WSDL between web service versions.

I have 2 versions of a C# 1.1 web service that emit different WSDL, and I would like to know what I may have done to cause this change, and what effect it might have on my client apps.
The original verison's WSDL contains sections for each web service function by name appended with HttpGetIn, HttpGetOut, HttpPostIn, and HttpPostOut. For example, for the web service function "Init", I have corresponding "InitHttpGetIn", "InitHttpGetOut", "InitHttpPostIn" and "InitHttpPostOut" sections in the WSDL.
The new version of the web service's WSDL is missing these sections, and our client application is not working with it. There is also a large section that starts wtih "<wsdl: binding" which seems to be related to the HttpGet and HttpPost sections above that is missing in the new version's WSDL.
I'm wondering if perhaps the client application is somehow reliant on these sections in order to function correctly. Is there a way for me to "add" these sections back in to the web service
Thanks in advance for any replies.
Will.


Answer this question

Differences in WSDL between web service versions.

  • orchidea

    Nikola Kasev wrote:

    Hi,

    Are you hosting both web services on the same server Are you also using Windows Server 2000 or Windows Server 2003

    If you are hosting them on Windows Server 2003, then the HttpPost and HttpGet methods are forbidden by default and you need to enable them in the web.config file, under the webServices/protocols section.

    They're both running on the same Windows 2003 Server machine, underneath different web applications in IIS. I'll take a look at the article you linked on Monday, and I have not researched the differences in each web apps's web.config files. Perhaps its enabled in one and disabled in the other.

    Thanks,

    Will.


  • Chavez

    Mintu wrote:
    use wsdl.exe to generate the WSDL using .NET 1.1 's command prompt.
    Both of the web service clients I created generated their proxy classes using the "webservice.asmx wsdl" method of querying the webservice. Is this not the preferred method
    Thanks,
    Will.

  • venki99

    Nikola Kasev wrote:

    If you are hosting them on Windows Server 2003, then the HttpPost and HttpGet methods are forbidden by default and you need to enable them in the web.config file, under the webServices/protocols section.

    Thanks - your post enabled me to get the WSDL consistent between the two versions. It turns out that wasn't the proble, but it was helpful in troubleshooting. I actually had a bug in the new version of the web service


  • jacksreb

    use wsdl.exe to generate the WSDL using .NET 1.1 's command prompt.

  • afita

    Hi,

    Are you hosting both web services on the same server Are you also using Windows Server 2000 or Windows Server 2003

    If you are hosting them on Windows Server 2003, then the HttpPost and HttpGet methods are forbidden by default and you need to enable them in the web.config file, under the webServices/protocols section.

    http://msdn.microsoft.com/library/default.asp url=/library/en-us/dnnetsec/html/THCMCh19.asp

    Best,

    - Nikola.


  • Differences in WSDL between web service versions.