Hi, I would like to use SOAP::Lite to communicate with the web server, but I need to send the token to get the access. Does anyone know how to set up in SOAP::Lite? I have the following code, but I get the errorcode 1001, "Request must have exactly one security token" message back. Does anyone give me some hints? Thanks
use SOAP::WSDL; use SOAP::Lite; my $soap=SOAP::WSDL->new( wsdl => 'http://172.16.230.101/ccws/ccws.asmx?WSDL' ); $soap->proxy( 'http://172.16.230.101/ccws/ccws.asmx'); $soap->wsdlinit; $soap->on_action(sub{'http://comverse-in.com/prepaid/ccws/RetrieveVoucherByB atchSerial'}); $serializer = SOAP::Serializer->envelope(method => 'security', SOAP::Header->name(Security=> '')->attr({mustUnderstand=>'1'},{xmlns=>'http://schemas.xmlsoap.org/ws/2002/ 07/secext'}), SOAP::Header->name(UsernameToken => '')->attr({xmlns=>'http://schemas.xmlsoap.org/ws/2002/07/utility'}, {Id=>'SecurityToken-2b8987f9-37e4-47b1-9a4a-12415aef5735'}), SOAP::Header->name(Username => 'web'), SOAP::Header->name(Password => 'qwerty')->attr({'Type'=>'PasswordText'}), SOAP::Header->name(Nonce => '0AJuLu+MMip44x1Mv9S1fg=='), SOAP::Header->name(Created => '2004-09-17T21:05:38Z'), ); my $som=$soap->call( 'RetrieveVoucherByBatchSerial', batchNumber => '77000', serialNumber => '7120408'); if ($som->fault) { print "\nfaultdetail:\n"; print $som->faultdetail; print "\nfaultcode:\n"; print $som->faultcode; print "\nfaultstring:\n"; print $som->faultstring; print "\nfaultactor:\n"; print $som->faultactor; } -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>