http://www.perlmonks.org?node_id=344919


in reply to Re: Re: SOAP Client
in thread SOAP Client

Just as a follow-up, I continued to play with SOAP::Data::Builder to see if I could build a successful request - To this end, I have the following code:
#!/opt/bin/perl use SOAP::Data::Builder; use SOAP::Lite +trace; my $builder = SOAP::Data::Builder->new; $builder->add_elem( 'name' => 'parameters' ); $builder->add_elem( 'name' => 'CustID', 'parent' => $builder->get_elem('parameters'), 'value' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' ); $builder->add_elem( 'name' => 'Data', 'parent' => $builder->get_elem('parameters'), 'value' => 'Testing' ); my $result = SOAP::Lite ->service('http://www.thedialogcenter.com/EncryptionService.ws +dl') ->Encrypt( $builder->to_soap_data ); print $result, "\n";
... which produces the following well-formed request ...
Accept: text/xml Accept: multipart/* Content-Length: 558 Content-Type: text/xml; charset=utf-8 SOAPAction: "http://www.arkbluecross.com/WebServices/EncryptionService +/Encrypt" <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-EN +C="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle= +"http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://sc +hemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/1999/X +MLSchema-instance" xmlns:xsd="http://www.w3.org/1999/XMLSchema"><SOAP +-ENV:Body><Encrypt xmlns=""><parameters><CustID xsi:type="xsd:string" +>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</CustID><Data xsi:type="xsd:string" +>Testing</Data></parameters></Encrypt></SOAP-ENV:Body></SOAP-ENV:Enve +lope>
However, whilst I haven't achieved a successful result, I have been able to build a well-formed SOAP request to dispatch to the service. If you can get a copy of a successful request generated by other means, it may be worth playing with SOAP::Data::Builder further to fashion a successful perl client.

 

perl -le "print unpack'N', pack'B32', '00000000000000000000001011001111'"