tags:

views:

559

answers:

2

PHP soap client in attempting to interact with a .NET soap server results in the following error: [soap:Receiver] Server was unable to process request. ---> Invalid length for a Base-64 char array.

$credentials = array(
    'RequestorUID'=> 'xxxx',
    'RequestorPassword'=> 'xxxx'
);
$param = array('pmPropertyManagerID'=>'xxxx');
$client->GetPropertyStatus($credentials, $param);

GetPropertyStatus take two arguments, a credentials object -> which works correctly as other functions that only require credentials are executed correctly. The second argument is defineds as a string and I have attempted to input it directly as a string and base64_encoded string (error: Length of the data to decrypt is invalid), an array and an associative array both string and base64_encoded string and get the error above.

Any help would be appreciated.

+2  A: 

Thanks for your response, I eventually go it to work doing the following:

$client->GetPropertyStatus($credentials, new SoapVar('xxxx', XSD_STRING, 'xsd:string'))

I just compare the $client->__getLastRequest() to the definitions on wsdl as a small deviation from it would cause an exception

Gabriel
A: 

Hi Gabriel, could you help me with my problem? I'm trying to communicate PHP SoapClient with an ASP.NET SOAP server like you...

http://stackoverflow.com/questions/2621124/how-to-send-complex-types-from-php-soapclient-to-asp-net-soap-server

I will really appreciate your help thanks

xaguilars