hi all,
i'd like to define this complex type:
<ReqNuevInfo>
<m0:Header>
<m0:RequestID>2147483647</m0:RequestID>
<m0:Sender>MKA</m0:Sender>
<m0:Receiver>MKA</m0:Receiver>
<m0:Timestamp>2001-12-17T09:30:47-05:00</m0:Timestamp>
<m0:EnvFlag>0</m0:EnvFlag>
<m0:Version>String</m0:Version>
</m0:Header>
<m0:Customer>
<m0:Company>
<m0:CustomerID>String</m0:CustomerID>
</m0:Company>
</m0:Customer>
<m0:MsisdnSpec>
<m0:Msisdn>034746474</m0:Msisdn>
</m0:MsisdnSpec>
<m0:MsisdnSpec>
<m0:Msisdn>034734343446474</m0:Msisdn>
</m0:MsisdnSpec>
</ReqNuevInfo>
at time i have:
---------------------------------------------------------------------
$soap->wsdl->addComplexType(
'ReqNuevInfoType',
'complexType',
'struct',
'sequence',
'',
array(
'Header' => array ('name'=>'Header', 'type'=>'tns:HeaderType'),
'Customer' => array
('name'=>'Customer','type'=>'tns:CustomerType'),
'MsisdnSpec' => array ('name'=>'MsisdnSpec',
'type'=>'tns:MsisdnSpecType')
)
);
------------------------------------------------------------------
and
------------------------------------------------------------------
$soap->wsdl->addComplexType(
'MsisdnSpecType',
'complexType',
'struct',
'choice',
'',
array(
'Msisdn' => array ('name'=>'Msisdn', 'type'=>'tns:MsisdnType'),
'MsisdnRange' => array
('name'=>'MsisdnRange','type'=>'tns:MsisdnRangeType'),
)
);
--------------------------------------------------------------
(i have also defined the other types)
it works already nearly perfect - only nearly because of:
if the incoming soap request only has one <m0:MsisdnSpec> - then
everything works as expected - i get a nice associative array like this:
--------------------------------------------------------------
[Header] => array (
[RequestID] => 2147483647,
[Sender] => MKA,
[Receiver] => MKA,
[Timestamp] => 2001-12-17T09:30:47-05:00,
[EnvFlag] => 0,
[Version] => String,
)
[Customer] => array (
[Company] => array (
[CustomerID] => String,
)
)
[MsisdnSpec] => array (
[Msisdn] => 034746474,
)
-------------------------------------------------------------
but if there are more than one <m0:MsisdnSpec> sections - then i wont
get an associative array any more - then i will get:
-------------------------------------------------------------
[0] => array (
[RequestID] => 2147483647,
[Sender] => MKA,
[Receiver] => MKA,
[Timestamp] => 2001-12-17T09:30:47-05:00,
[EnvFlag] => 0,
[Version] => String,
)
[1] => array (
[Company] => array (
[CustomerID] => String,
)
)
[2] => array (
[Msisdn] => 034746474,
)
[3] => array (
[Msisdn] => 034734343446474,
)
)
-------------------------------------------------------------
so - how can i change my complexType definition that this will give me
something like this:
-------------------------------------------------------------
[Header] => array (
[RequestID] => 2147483647,
[Sender] => MKA,
[Receiver] => MKA,
[Timestamp] => 2001-12-17T09:30:47-05:00,
[EnvFlag] => 0,
[Version] => String,
)
[Customer] => array (
[Company] => array (
[CustomerID] => String,
)
)
[MsisdnSpec] => array (
[0] => array (
[Msisdn] => 034746474,
)
[1] => array (
[Msisdn] => 034734343446474,
)
)
)
-----------------------------------------------------------
hope someone can help me with this
have a nice day
Wolfgang
-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
|