#!/usr/bin/perl --
use SOAP::Lite;
my $soap = SOAP::Lite
->proxy(
'http://localhost/blah/DummyService',
timeout => 0.00001,
);
$soap->transport->add_handler("request_send", \&pp_dump );
$soap->transport->add_handler("response_done", \&pp_dump );
my $param = SOAP::Data->name(
"ListOfArmAccountContactInterface" => \SOAP::Data->value(
SOAP::Data->name(
"ARMAccount" => \SOAP::Data->value(
SOAP::Data->name( "ContactCompanyId" => '1029843' ),
SOAP::Data->name(
"ListOfArmContact" => \SOAP::Data->value(
SOAP::Data->name(
"ARMContact" => \SOAP::Data->value(
#~ SOAP::Data->name("<ConnectContactId>" => 'CON12347'
+)
SOAP::Data->name( "ConnectContactId" => 'CON12347' )
)
)
)
)
)
)
)
);
#~ print pp(
#~ $soap->serializer()->envelope(
#~ method => 'ContactInsertOrUpdate',
#~ $param
#~ ),
#~ ), "\n\n";
$soap->call( 'ContactInsertOrUpdate', $param );
sub pp {
use XML::Twig;
open my($fh), '>', \my $str;
no warnings 'newline';
XML::Twig->new(qw! pretty_print record !)->xparse(@_)->print( $fh
+);
return $str;
}
sub pp_dump {
my $content = $_[0]->content('');
$_[0]->content( pp($content) );
print $_[0]->as_string,"\n";
return;
}
__END__