RE: SoapHttpClientProtocol request canceled

From: Dan Rogers (danro_at_microsoft.com)
Date: 12/07/04


Date: Tue, 07 Dec 2004 20:30:39 GMT

Since this is only happening on the VB client, is there any chance that the
VB application has settings in the user's registry hive? These won't work
on the Citrix server, and could account for what you are seeing. For
instance, if the VB application uses appsettings, you will have this kind
of trouble.

Hope this helps

Dan Rogers
Microsoft Corporation
--------------------
Thread-Topic: SoapHttpClientProtocol request canceled
thread-index: AcTb0NgC5WX5XiRHQo+l9SkNrnMB+A==
X-WBNR-Posting-Host: 202.0.44.75
From: "=?Utf-8?B?Sml0IFByYXNhZA==?=" <JitPrasad@discussions.microsoft.com>
References: <DC312E9E-3FCE-47E0-B8F2-D7F1D522A9F2@microsoft.com>
<ZZIOvkO2EHA.768@cpmsftngxa10.phx.gbl>
Subject: RE: SoapHttpClientProtocol request canceled
Date: Mon, 6 Dec 2004 12:19:09 -0800
Lines: 186
Message-ID: <5B08BE19-5665-4D52-9EF5-2902478BAF7F@microsoft.com>
MIME-Version: 1.0
Content-Type: text/plain;
        charset="Utf-8"
Content-Transfer-Encoding: 7bit
X-Newsreader: Microsoft CDO for Windows 2000
Content-Class: urn:content-classes:message
Importance: normal
Priority: normal
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
Newsgroups: microsoft.public.dotnet.framework.webservices
NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.1.29
Path: cpmsftngxa10.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7904
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

The following is the architecture I have got:
 - Web Service (intranet) on IBM Websphere on Win 2000
 - VB.NET 2002 (.NET v1.0) client exe
 - VB6 client exe
 - VB.NET 2002 (.NETv1.0) client dll that talks to the webservice.
The VB.NET exe and the VB6 exe both use VB.NET dll to sent request/response
to the webservice.

My workstation and the deployment citrix server have both .NET1.0 SP3 and
NET1.1 SP1.

One thing I noticed is that when the VB.NET exe runs, the exe and the dll,
by default, get loaded under .NET1.0. However, when VB6 runs and calls into
the .NET dll, the dll gets loaded under .NET1.1! (I have not checked which
config file you can set to make the dll load under .NET1.0, even though, by
default, it should load under .NET1.0).

The problem starts, however, when I deploy and run from the citrix terminal
server (with or without using admin rights). If I run .NET exe, then no
problems, as things get loaded under .NET1.0. However, if I run VB6, then
I
get the error, as .NET dll gets loaded under .NET1.1. And just to check if
the problem was confined to .NET1.1, I set the .net exe's config file to
load
the .NET exe under .NET1.1, and hence the .NET dll, then the error occurs
as
well.

The frustrating thing is that if I run the app from my workstation, then
whether it is loaded under .NET1.0 or .NET1.1, there are no problems.

I have regenerated/refreshed the proxy, it does not seem to make any
difference.
..Jit.

"Dan Rogers" wrote:

> Hi,
>
> I'm having trouble figuring out what the specifics are. Is this a
service
> that you upgraded to 1.1 and now the existing 1.0 clients are broken? Or
> did you upgrade the client machines to 1.1 and not the server machines
and
> not the clients are broken?
>
> Have you tried refreshing the generated service proxies? This will
> probably fix your issue. If you are not able to do this then you are
> probably going to have to keep things stable. To understand what has
> changed, I'd suggest comparing the WSDL contracts for the two situations
> (assuming it was the machine that the service runs on that was upgraded.)
 
> Unless the two contracts are the same.
>
> If I read you right though, the service side has not changed, but you
have
> upgraded the .NET version on the machine that makes the call. Try
> refreshing the proxy and recompiling. This should fix the issue. The
only
> other option you have is to add policy statements to the web.config for
> this app that make it load the assemblies needed by the app with 1.0.
>
> I hope this helps
>
> Dan Rogers
> Microsoft Corporation
> --------------------
> Thread-Topic: SoapHttpClientProtocol request canceled
> thread-index: AcTY5kqbUojuZwLcRMqIjEVIIYB8sg==
> X-WBNR-Posting-Host: 210.55.201.197
> From: "=?Utf-8?B?Sml0IFByYXNhZA==?=" <JitPrasad@discussions.microsoft.com>
> Subject: SoapHttpClientProtocol request canceled
> Date: Thu, 2 Dec 2004 19:15:07 -0800
> Lines: 94
> Message-ID: <DC312E9E-3FCE-47E0-B8F2-D7F1D522A9F2@microsoft.com>
> MIME-Version: 1.0
> Content-Type: text/plain;
> charset="Utf-8"
> Content-Transfer-Encoding: 7bit
> X-Newsreader: Microsoft CDO for Windows 2000
> Content-Class: urn:content-classes:message
> Importance: normal
> Priority: normal
> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
> Newsgroups: microsoft.public.dotnet.framework.webservices
> NNTP-Posting-Host: TK2MSFTNGXA03.phx.gbl 10.40.1.29
> Path: cpmsftngxa10.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFTNGXA03.phx.gbl
> Xref: cpmsftngxa10.phx.gbl
> microsoft.public.dotnet.framework.webservices:7784
> X-Tomcat-NG: microsoft.public.dotnet.framework.webservices
>
> I have a working client-side Vb.Net (.net v1.0) app that talks to a
> Webspere
> webservice on a windows 2000 server. The client side app runs on a
citrix
> server, also a Windows 2000 server. The app worked ok till I installed
Net
> v1.1 on the citrix, now I get an error when I get the app to use .NET
v1.1.
>
> If the app uses .NET v1.0 (with .NET v1.1 stalled), then its ok, however
I
> must use v1.1 for other reasons.
>
> Has somebody come across this error before - I am pulling out my hair on
> this one.
>
> The error I get is:
>
> The request was aborted: The request was cancelled. as
> system.Net.ConnectStream.CloseInternal(Boolean internalCall, Bollean
> ignoreSuhtDownCheck)
> at System.Net.ConnectStream.CloseInternal(Boolean internalCall)
> at System.Net.ConnectStream.Close
> at Stste.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String
> methodName, Object[] parameters)
> at GTPSMessagingLib.GTPSRouterService.process3ParmRequest(string
> inputHeaderer, String messageControlPayload, string inputMessage)
>
> The proxy class I use in the app is:
>
>
'---------------------------------------------------------------------------
> ---
> ' <autogenerated>
> ' This code was generated by a tool.
> ' Runtime Version: 1.0.3705.0
> '
> ' Changes to this file may cause incorrect behavior and will be lost
if
> ' the code is regenerated.
> ' </autogenerated>
>
'---------------------------------------------------------------------------
> ---
>
> Option Strict Off
> Option Explicit On
>
> Imports System
> Imports System.ComponentModel
> Imports System.Diagnostics
> Imports System.Web.Services
> Imports System.Web.Services.Protocols
> Imports System.Xml.Serialization
>
> '
> 'This source code was auto-generated by wsdl, Version=1.0.3705.0.
> '
>
> '<remarks/>
> <System.Diagnostics.DebuggerStepThroughAttribute(), _
> System.ComponentModel.DesignerCategoryAttribute("code"), _
>
>
System.Web.Services.WebServiceBindingAttribute(Name:="GTPSRouterServiceSoap"
> ,
> [Namespace]:="urn:ServiceRequest")> _
> Public Class GTPSRouterService
> Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
>
> '<remarks/>
> Public Sub New()
> MyBase.New
> Me.Url =
"http://localhost/GTPSRRWebService/GTPSRouterService.asmx"
> End Sub
>
>
>
<System.Web.Services.Protocols.SoapRpcMethodAttribute("urn:ServiceRequest/pr
> ocess3ParmRequest",
> RequestNamespace:="urn:ServiceRequest",
> ResponseNamespace:="urn:ServiceRequest")> _
> Public Function process3ParmRequest(ByVal inputHeader As String,
ByVal
> messageControlPayload As String, ByVal inputMessage As String) As
> <System.Xml.Serialization.SoapElementAttribute("return")> String
> Dim results() As Object = Me.Invoke("process3ParmRequest", New
> Object() {inputHeader, messageControlPayload, inputMessage})
> Return CType(results(0), String)
> End Function
>
>
> '<remarks/>
> Public Function Beginprocess3ParmRequest(ByVal inputHeader As String,
> ByVal messageControlPayload As String, ByVal inputMessage As String,
ByVal
> callback As System.AsyncCallback, ByVal asyncState As Object) As
> System.IAsyncResult
> Return Me.BeginInvoke("process3ParmRequest", New Object()
> {inputHeader, messageControlPayload, inputMessage}, callback, asyncState)
> End Function
>
> '<remarks/>
> Public Function Endprocess3ParmRequest(ByVal asyncResult As
> System.IAsyncResult) As String
> Dim results() As Object = Me.EndInvoke(asyncResult)
> Return CType(results(0), String)
> End Function
>
> End Class
>
>



Relevant Pages

  • RE: SoapHttpClientProtocol request canceled
    ... - VB.NET 2002 client dll that talks to the webservice. ... The VB.NET exe and the VB6 exe both use VB.NET dll to sent request/response ... > inputHeaderer, String messageControlPayload, string inputMessage) ...
    (microsoft.public.dotnet.framework.webservices)
  • Re: Array Function
    ... I have a DLL which I use to interact with the database. ... By adding the as string the function in the DLL now compiles correctly. ... then just set the value of my function from this new Array. ... 1-Incorrect usage of "imports" statement. ...
    (microsoft.public.dotnet.languages.vb)
  • Re: Array Function
    ... It's only since adding the As String in place of As String that the ... I have a DLL which I use to interact with the database. ... then just set the value of my function from this new Array. ... 1-Incorrect usage of "imports" statement. ...
    (microsoft.public.dotnet.languages.vb)
  • How to stop executing method on server??
    ... Server write this file to direcotry and return to ... client name of this directory ... arguments in order to invoke certain method from dll ... public String RegisterFile ...
    (microsoft.public.dotnet.framework.remoting)
  • Create a DLL with VB.NET to use it in ASP pages
    ... Hi, I have to make a DLL in Visual Studio using VB.NET, then I have to ... Imports System.IO ... Public Function LDAPgetAllEmails(ByVal domain As String) As String ...
    (microsoft.public.dotnet.languages.vb)