in reply to SOAP::Lite:Java vs Perl

When I want to build a web service (client/server) with SOAP::Lite I first avoid using service method. So I constructed it like this with Data objects:
use strict; use warnings; use Data::Dumper; my ($soap,$data,$result,$session); use SOAP::Lite+trace=> 'debug'; { ##Connecting to the SOAP API $soap = SOAP::Lite->new( 'proxy' =>('http://searchapi2.dialog.com/axis/services/D +ialogSearchPort'), ); $soap->default_ns('urn:DialogSearch'); $data = SOAP::Data ->name('Session'=>\SOAP::Data->value( SOAP::Data->name(Account=>'account')->type(''), SOAP::Data->name(Password=>'pass')->type(''), SOAP::Data->name(State=>'START_SESSION')->type('' +), SOAP::Data->name(Cost=>0)->type(''), SOAP::Data->name(Atomic=>'True')->type(''), SOAP::Data->name(Interrupt=>'False')->type(''), SOAP::Data->name(ProcessId=>'')->type(''), ), ); $result = $soap->Version($data); }
It returns:
<ErrorMessage xsi:type="xsd:string">Invalid user id = account</ErrorM +essage>
I had to exclude type definitions from xml because the server returned IllegalArgumentException error.
hth