in reply to Convert VB code to perl and SOAP::Lite
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\
|
|---|