icelava.net

why be normal?
Welcome to icelava.net Sign in | Help
in Search

Why do WSE 3.0 projects in x64 Windows Vista generate SoapHttpClientProtocol instead of WebServicesClientProtocol?

Last post 08-26-2011, 8:16 by Anonymous. 3 replies.
Sort Posts: Previous Next
  •  01-15-2009, 1:24 5224

    Why do WSE 3.0 projects in x64 Windows Vista generate SoapHttpClientProtocol instead of WebServicesClientProtocol?

    In effort to upgrade my certification to MCPD-EA status, I have been retrograding to older frameworks I never had the chance to work on in the past three years. That means putting down that shiny WCF book and dusting off the WSE 3.0 MSDN documentation.

    One of the IDE-incorporated features for WSE - which was long present in Visual Studio .NET 2003 - is to get Visual Studio 2005 to generate service proxies based on the Microsoft.Web.Services3.WebServicesClientProtocol class when the project is WSE-enabled. This class provides the base for all the tasty WSE functionality. However, on my main workstation, I consistently witness Visual Studio generating the stock SoapHttpClientProtocol. Manually editting the inheritance to WebServicesClientProtocol is a mere ephemeral accomplishment, since every attempt to Update Web Reference would just result in Visual Studio running the regular wsdl.exe generator.

    But it sure worked fine on a laptop I have. The only major difference is the laptop is x86 Windows Vista. My main desktop workstation is x64 Windows Vista. That cannot be the problem, correct? Why, of course it is.

    Straight after the launch of .NET Framework 2.0, Microsoft was visibily eager to concentrate on WCF (and .NET Framework 3.0 overall). That was a time when very few developers were even close to hitting the 4GB limit to realise they had to move on to x64 operating systems. Even as of now there are still not enough developers making the switch into 64-bit territory. I can see just how "much" attention WSE 3.0 got from an x64 perspective. Casting nets across various communities yield practically zero experience on what's happening here. It certainly took long enough for me to alter my choices in words to finally dig out the truth.

    The WSE 3.0 installer fails to alter Visual Studio 2005's config file C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\devenv.exe.config with the following entry.

    <configuration>
     
    <system.web>
       
    <webServices>
          <
    soapExtensionImporterTypes>
            <
    add type="Microsoft.Web.Services3.Description.WseExtensionImporter, Microsoft.Web.Services3, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
          </
    soapExtensionImporterTypes>
        </
    webServices>
      </
    system.web>
    </
    configuration>

    Plug that in, and Visual Studio wakes up from its trance to realise there is a better world out there.

  •  12-20-2009, 16:35 6258 in reply to 5224

    Re: Why do WSE 3.0 projects in x64 Windows Vista generate SoapHttpClientProtocol instead of WebServicesClientProtocol?

    This post helped me very much. Thank you.
  •  04-06-2010, 0:17 6646 in reply to 5224

    Re: Why do WSE 3.0 projects in x64 Windows Vista generate SoapHttpClientProtocol instead of WebServicesClientProtocol?

    How in GOD's green earth did you figure that out? I guess it is somewhat logical after you know the answer. My days at the top of the class are long gone :) Good job!!!
  •  08-26-2011, 8:16 8022 in reply to 5224

    Re: Why do WSE 3.0 projects in x64 Windows Vista generate SoapHttpClientProtocol instead of WebServicesClientProtocol?

    I don't have x64 OS.. Actually working on an old WINXP machine, and I am facing same problem. I did try out the resolution provided in this post though. But even after adding the tag to the specified file, this problem is not going away. What should I do now?
View as RSS news feed in XML
Powered by Community Server, by Telligent Systems