It might be useful to see an example of the actual SOAP envelope the server is expecting (or the WSDL file if that is appropriate.) However looking at your code (and then at the MSSOAP docs as I have mercifully avoided using it,) I would guess that the envelope is going to be something like (I exclude the SOAP namespace stuff for clarity):
And code that will generate this kind of envelope is:<Envelope> <Header /> <Body xmlns:m="urn:SystemUnion-Journal"> <m:Import> <m:strPayload> $strPayload </m:strPayload> </m:Import> </Body> </Envelope>
use SOAP::Lite +trace => 'all'; + my $uri = 'urn:SystemUnion-Journal'; + my $soap = SOAP::Lite->proxy('http://wdb_sqltest:8080/ssc/servlet/SUGS +oap'); $soap->uri('urn:SystemUnion-Journal'); $soap->autotype(0); + $soap->soapversion('1.1'); + $soap->serializer()->attr({}); + $soap->serializer()->namespaces({'http://schemas.xmlsoap.org/soap/enve +lope/' => undef}); + $soap->call(SOAP::Data->name('Import')->encodingStyle(undef)->attr({xm +lns => $uri}), SOAP::Data->name(strPayload => $strPayload));
Hope that helps
/J\
In reply to Re: Convert VB code to perl and SOAP::Lite
by gellyfish
in thread Convert VB code to perl and SOAP::Lite
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |