PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

Home » Web Services » SOAP » Bug #7626

Error whith response to .NET client

Details

Request #7626Error whith response to .NET client
Submitted2006-05-15 14:09 UTC
Fromsn8p at mail dot ru
StatusNo Feedback
PackageSOAP
PHP Version5.1.2
OSFree BSD / Windows
Roadmaps(Not assigned)

Comments

[2006-05-15 14:09 UTC] sn8p at mail dot ru

Description:
------------
I'm calling SOAP function from .NET client, but when return value is complex array, my client reporting error:
The specified type was not recognized: name='Struct', namespace='', at <retval xmlns='urn:CntMan'>.

Test script:
---------------
......

$this->__typedef['{urn:CntMan}PhoneModel'] = array("ID"=>"int",
"Manufacturer"=>"string",
"Model"=>"string",
"UserAgent"=>"string",
"BrowserType"=>"string",
"PolyphonyType"=>"string",
"MonophonyType"=>"string",
"RealtoneType"=>"string",
"VideoType"=>"string",
"DisplayResolution"=>"string",
"IsColored"=>"boolean",
"IsNew"=>"boolean",
"IsJavaSupport"=>"boolean",
"IsPermited"=>"boolean",
"Comments"=>"string"
);

$this->__typedef['{urn:CntMan}PhoneModelArray'] = array(array("item"=>"{urn:CntMan}PhoneModel"));

$this->__dispatch_map['GetPhoneModels'] = array(
'in' => array(),
'out' => array('retval'=>"{urn:CntMan}PhoneModelArray")
);

function GetPhoneModels()
{

.........................................

$ret = Array();

if($res_phones)
{
foreach($res_phones as $n=>$phone)
{

$item[ID] = $phone[id];
$item[Manufacturer] = mb_convert_encoding($phone[phone], "UTF-8", "Windows-1251");
$item[Model] = mb_convert_encoding($phone[model], "UTF-8", "Windows-1251");
$item[UserAgent] = mb_convert_encoding($phone[user_agent], "UTF-8", "Windows-1251");
$item[BrowserType] = mb_convert_encoding($phone[browser], "UTF-8", "Windows-1251");
$item[PolyphonyType] = mb_convert_encoding($phone[melody], "UTF-8", "Windows-1251");
$item[MonophonyType] = mb_convert_encoding($phone[mono], "UTF-8", "Windows-1251");
$item[RealtoneType] = mb_convert_encoding($phone[mp3], "UTF-8", "Windows-1251");
$item[VideoType] = mb_convert_encoding($phone[video], "UTF-8", "Windows-1251");
$item[DisplayResolution] = mb_convert_encoding($phone[resolution], "UTF-8", "Windows-1251");
$item[IsColored] = ($phone[pic]=='1')?(true):(false);
$item[IsNew] = ($phone["new"]=='1')?(true):(false);
$item[IsJavaSupport] = ($phone[java]=='1')?(true):(false);
$item[IsPermited] = ($phone[permit]=='1')?(true):(false);
$item[Comments] = mb_convert_encoding($phone[comments], "UTF-8", "Windows-1251");

$ret[]=$item;
}

return(new SOAP_Value('{urn:CntMan}retval','{urn:CntMan}PhoneModelArray',ret));
//return($ret);
}

//}
}