[ PetarSrdanovic @ 16.09.2008. 13:04 ] @
Imam problem sa php i nusoap-om.
Imam potrebu da sa web servisa (kombinacija apache, mysql i php) Pokupim sadrzaj nekih tabela. Client je pisan u C#. Osmislio sam kod, ali imam problem sa registracijom kompleksnih tipova. Ovo je kod koji treba da definise array kompleksnog tipa Column

$server->wsdl->addComplexType(
'StringArray',
'complexType',
'array',
'',
'SOAP-ENC:Array',
array(),
array(
array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'xsd:string[]')
),
'xsd:string'
);

$server->wsdl->addComplexType(
'Column',
'complexType',
'struct',
'all',
'',
array(
'ColumnName' => array('name'=>'ColumnName', 'type'=>'xsd:string'),
'Values' => array('name'=>'Values','type'=>'tns:StringArray')
)
);

$server->wsdl->addComplexType(
'ColumnArray',
'complexType',
'array',
'',
'SOAP-ENC:Array',
array(),
array(
array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'tns:Column[]')
),
'tns:Column'
);

Prilikom izvrsavanja dobijam gresku (inner exception text)
"The specified type was not recognized: name='Column' ...."
Kao da php ne prepoznaje prethodno definisani kompleksni tip "Column". Nasao sam dosta slicnih primera po net-u, namespace-ovi su dobri, ali jednostavno kod mene ne funkcionise.
[ stankons @ 17.09.2008. 09:13 ] @
Možda jer ti fali nešto ovako?

Code:

$server->wsdl->addComplexType(
    'SDZ',
    'complexType',
    'struct',
    'all',
    '',
    array(
        'arySDZ' => array('name'=>'arySDZ','type'=>'tns:ColumnArray')
    )
);


Ovde, sam ti postavio jedan primer, probao sam iz Delphi - a, meni radi...
[ PetarSrdanovic @ 17.09.2008. 12:44 ] @
Nazalost nije to, imam takav blok, to je 'Column' :(
Resio sam na drugi nacim, ali mi nije jasno zasto ovakav kod ne radi, jer na net-u ima dosta slicnih primera. Da li je do verzije php-a (zadnja sa neta, kao i Apache i MySql)
U svakom slucaju hvala.