DSK
Fri Mar 14 02:34:10 CDT 2008
Dude,
First thing first, as webservice is in a different box, you can't have the
reference of a variable leaked onto that box. Secondly, when the request
gets onto http, it disconnects the reference, thus leaving you with no
connection with the calling method for the caller. If you understand this,
you would never argue on the concept of using the OUT in a method of a
webserver.
Coming to the compiler identifying the flaw, pl understand that it is not a
syntax flaw, but a logical flaw. With in a web service you can have a method
exposing an OUT parameter to one more method. So, the compiler assumes that
you are defining that for the purpose of another method. Hope you got the
point.
If you are aware of the mechanism of invoking the webservice using HTTP SOAP
or any other possiblity, kindly share that with us.. Infact, it violates the
rule of isolation. Anyhow, if you are successful, in developing some code
like that, pl share that with us.
HTH
<ckkwan@my-deja.com> wrote in message
news:35c08815-d9b7-435a-8c72-dc7ef4378e9f@s8g2000prg.googlegroups.com...
> On 3$B7n(B13$BF|(B, $B2<8a(B10$B;~(B56$BJ,(B, "DSK Chakravarthy" <dskch...@msn.com> wrote:
>> The actual purpose of the OUT parameter is pass data as reference and let
>> the data be modified by the calling method. Isn't it?? as web service is
>> disconnected and invoked in a different context, you cann't pass any
>> reference from WebService.
>>
>> Thus, you code shouldn't have the OUT parameter.
>>
>> HTH
>> Chakravarthy
>
> Well, if OUT parameter is NOT supose to appear in any WebService, then
> Visual Studio should have generated a compile time error right :)
>
> Besides, I look at the Input and Output XML string, it is 100%
> possible if I invoke this WebService (with *OUT* parameter) using HTTP
> SOAP or from anyother client like Java.
>
> The problem now is, I need to invoke using Ajax, and passing in the
> Query string as the Cmd :(
>
>
> POST /WebConfig/Utils/External.asmx HTTP/1.1
> Host: 127.0.0.1
> Content-Type: text/xml; charset=utf-8
> Content-Length: length
> SOAPAction: "
http://tempuri.org/Test"
>
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:soap="
http://
> schemas.xmlsoap.org/soap/envelope/">
> <soap:Body>
> <Test xmlns="
http://tempuri.org/">
> <Msg>string</Msg>
> </Test>
> </soap:Body>
> </soap:Envelope>
>
>
> HTTP/1.1 200 OK
> Content-Type: text/xml; charset=utf-8
> Content-Length: length
>
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="
http://www.w3.org/2001/XMLSchema" xmlns:soap="
http://
> schemas.xmlsoap.org/soap/envelope/">
> <soap:Body>
> <TestResponse xmlns="
http://tempuri.org/">
> <Name>string</Name>
> <Id>string</Id>
> <Res>string</Res>
> </TestResponse>
> </soap:Body>
> </soap:Envelope>