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

jhyland87 has asked for the wisdom of the Perl Monks concerning the following question:

Hey, so im working on messing with the SmarterMail system API, with SOAP, im trying to simply add a new user, I know there API works, because I can interface with it in PHP. However im having some issues with perls SOAP::LITE module. Here is the PHP example, (Which works)
<?php try { $client = new SoapClient(http://SMARTERMAIL.com/services/svcUserAdmin. +asmx?WSDL'); $params = array( 'AuthUserName' => 'xxxxxxxxxxxxxx@xxxxxxxx.com', 'AuthPassword' => 'xxxxxxxxxx', 'NewUsername' => 'xxxxxxxx', 'NewPassword' => 'xxxxxxxxxxxx', 'DomainName' => 'xxxxxxxxxxx.com', 'FirstName' => 'john', 'LastName' => 'doe', 'IsDomainAdmin' => 0 ); $addUser = $client->AddUser($params); ?>Email account: <b><?=$emailaddr ?></b> has been added<p><? } catch (Exception $e) { printf("Message = %s ",$e->__toString()); } ?>
And here is my Perl version, which returns "0", and has no effect on the server.
#!c:/perl/bin use SOAP::Lite; use strict; use warnings; my %domainArray = ( 'AuthUserName' => 'xxxxxxxxxxxxxx@xxxxxxxx.com', 'AuthPassword' => 'xxxxxxxxxx', 'NewUsername' => 'xxxxxxxx', 'NewPassword' => 'xxxxxxxxxxxx', 'DomainName' => 'xxxxxxxxxxx.com', 'FirstName' => 'john', 'LastName' => 'doe', 'IsDomainAdmin' => 0 ); my $WSDL = 'http://SMARTERMAIL.com/services/svcUserAdmin.asmx?WSDL +'; my $soap = new SOAP::Lite->service($WSDL); my %output = $soap->AddUser(%domainArray); print "Output: ". %output;
Anyone know what these two do differently? Im rather new to the SOAP module, and perl in general, really....