Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   ASP .Net Web Services (http://www.velocityreviews.com/forums/f64-asp-net-web-services.html)
-   -   Calling .Net web service using a PERL client. (http://www.velocityreviews.com/forums/t783633-calling-net-web-service-using-a-perl-client.html)

JTrigger 08-19-2004 10:01 PM

Calling .Net web service using a PERL client.
 
I need to call a .Net web service that takes an array or object as a
parameter from a PERL client. I have been trying to use the PERL SOAP::Lite
package to do this without success. I can call one that takes a simple
type, such as int or string, but not an array or object. Please help!!! My
code that I have written to call the web service and the SOAP packets that
get sent and received are below. It seems like no matter what I do I cannot
get it to recognize the array that I pass. Please CC my email address with
any responses. My address is as follows with the $# removed:
J$#im.Fo$#wl$#er@E$#D$#S$#.c$#o$#m
Thanks in advance for any assistance.

use SOAP::Lite;

my @web;
@web[0] = '234234';
@web[1] = 'Test1';
@web[2] = '3454545';
@web[3] = 'Test2';

my $s = SOAP::Lite
-> uri('EDS.Galileo/')
-> proxy('http://testedsapps.weyer.com/Galileo/Galileo.asmx')
-> on_action(sub{sprintf '%s%s', @_ })
-> on_debug(sub{print@_}) ;
;
$result =
$s->UpdateIncident(SOAP::Data->name('TicketValues')->value(SOAP::Data->value
(\@web)));

unless ($result->fault) {
if (length ($result->result()) == 0)
{
print "result = ".$result->result()."\n";
}

} else {

print "error ".$result->faultstring."\n";


unless ($result->fault) {
if (length ($result->result()) == 0)
{
print "result = ".$result->result()."\n";
}

} else {

print "error ".$result->faultstring."\n";
}

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/1999/XMLSchema"
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<namesp1:UpdateIncident xmlns:namesp1="EDS.Galileo/">
<TicketValues xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="xsd:string[4]">
<item xsi:type="xsd:string">"600100024"</item>
<item xsi:type="xsd:string">"GFS000999"</item>
<item xsi:type="xsd:string">"536871002"</item>
<item xsi:type="xsd:string">"1092585900"</item>
</TicketValues>
</namesp1:UpdateIncident>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
HTTP/1.1 500 (Internal Server Error) Internal Server Error.
Cache-Control: private
Connection: close
Date: Thu, 19 Aug 2004 14:07:57 GMT
Server: Microsoft-IIS/5.0
Content-Length: 732
Content-Type: text/xml; charset=utf-8
Client-Date: Thu, 19 Aug 2004 14:08:41 GMT
Client-Peer: 10.31.240.10:80
Client-Response-Num: 1
MicrosoftOfficeWebServer: 5.0_Pub
X-AspNet-Version: 1.1.4322
X-Powered-By: ASP.NET

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<soap:Fault>
<faultcode>soap:Server</faultcode>
<faultstring>System.Web.Services.Protocols.SoapExc eption: Server was
unable to process request. ---&gt; System.NullReferenceException: Object
reference not set to an instance of an object.
at EDS.Galileo.Galileo.UpdateIncident(String[] TicketValues) in
c:\inetpub\wwwroot\galileo\galileo.asmx.cs:line 484
--- End of inner exception stack trace ---</faultstring>
<detail />
</soap:Fault>
</soap:Body>
</soap:Envelope>



[MSFT] 08-20-2004 06:07 AM

RE: Calling .Net web service using a PERL client.
 
Hello,

I am not a expert on PERL. Here are some document I found so far, you may
take a look to see if they can help:

How to Call a .NET-based Web Service Using the SOAP::Lite Perl Library
http://msdn.microsoft.com/library/de...us/dnsoap/html
/soapliteperl.asp

SOAP::Lite Client HOWTO
http://soapenv.org/article.pl?sid=02...29&mode=thread

Since this group focus on .NET web service, it may be hard to find one who
is familar with PERL client. I suggest you may also post this question on a
PERL related newsgroup to get more information.

Luke


Dino Chiesa [Microsoft] 08-23-2004 03:05 PM

Re: Calling .Net web service using a PERL client.
 
This service
http://www.xmethods.net/ve2/ViewList...6-DD728CC865DE

includes a perl client that retrieves an array from a C# ASMX service.

"JTrigger" <jtrigger@nospam.nospam> wrote in message
news:OQ7XhgjhEHA.1964@tk2msftngp13.phx.gbl...
> I need to call a .Net web service that takes an array or object as a
> parameter from a PERL client. I have been trying to use the PERL

SOAP::Lite
> package to do this without success. I can call one that takes a simple
> type, such as int or string, but not an array or object. Please help!!!

My
> code that I have written to call the web service and the SOAP packets that
> get sent and received are below. It seems like no matter what I do I

cannot
> get it to recognize the array that I pass. Please CC my email address

with
> any responses. My address is as follows with the $# removed:
> J$#im.Fo$#wl$#er@E$#D$#S$#.c$#o$#m
> Thanks in advance for any assistance.
>
> use SOAP::Lite;
>
> my @web;
> @web[0] = '234234';
> @web[1] = 'Test1';
> @web[2] = '3454545';
> @web[3] = 'Test2';
>
> my $s = SOAP::Lite
> -> uri('EDS.Galileo/')
> -> proxy('http://testedsapps.weyer.com/Galileo/Galileo.asmx')
> -> on_action(sub{sprintf '%s%s', @_ })
> -> on_debug(sub{print@_}) ;
> ;
> $result =
>

$s->UpdateIncident(SOAP::Data->name('TicketValues')->value(SOAP::Data->value
> (\@web)));
>
> unless ($result->fault) {
> if (length ($result->result()) == 0)
> {
> print "result = ".$result->result()."\n";
> }
>
> } else {
>
> print "error ".$result->faultstring."\n";
>
>
> unless ($result->fault) {
> if (length ($result->result()) == 0)
> {
> print "result = ".$result->result()."\n";
> }
>
> } else {
>
> print "error ".$result->faultstring."\n";
> }
>
> <?xml version="1.0" encoding="UTF-8"?>
> <SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/1999/XMLSchema"
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <SOAP-ENV:Body>
> <namesp1:UpdateIncident xmlns:namesp1="EDS.Galileo/">
> <TicketValues xsi:type="SOAP-ENC:Array"
> SOAP-ENC:arrayType="xsd:string[4]">
> <item xsi:type="xsd:string">"600100024"</item>
> <item xsi:type="xsd:string">"GFS000999"</item>
> <item xsi:type="xsd:string">"536871002"</item>
> <item xsi:type="xsd:string">"1092585900"</item>
> </TicketValues>
> </namesp1:UpdateIncident>
> </SOAP-ENV:Body>
> </SOAP-ENV:Envelope>
> HTTP/1.1 500 (Internal Server Error) Internal Server Error.
> Cache-Control: private
> Connection: close
> Date: Thu, 19 Aug 2004 14:07:57 GMT
> Server: Microsoft-IIS/5.0
> Content-Length: 732
> Content-Type: text/xml; charset=utf-8
> Client-Date: Thu, 19 Aug 2004 14:08:41 GMT
> Client-Peer: 10.31.240.10:80
> Client-Response-Num: 1
> MicrosoftOfficeWebServer: 5.0_Pub
> X-AspNet-Version: 1.1.4322
> X-Powered-By: ASP.NET
>
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <soap:Body>
> <soap:Fault>
> <faultcode>soap:Server</faultcode>
> <faultstring>System.Web.Services.Protocols.SoapExc eption: Server was
> unable to process request. ---&gt; System.NullReferenceException: Object
> reference not set to an instance of an object.
> at EDS.Galileo.Galileo.UpdateIncident(String[] TicketValues) in
> c:\inetpub\wwwroot\galileo\galileo.asmx.cs:line 484
> --- End of inner exception stack trace ---</faultstring>
> <detail />
> </soap:Fault>
> </soap:Body>
> </soap:Envelope>
>
>





All times are GMT. The time now is 08:05 AM.

Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57