Bonjour,
J'essaie depuis de nombreux jours à paramétrer un webservice utilisant l'AutoDiscover afin que celui-ci propose une liste de paramètre nommée :
Code :
1 2 3 4 5 6 7 8
| <params>
<paramList>
<!--Zero or more repetitions:-->
<myItemName>1</myItemName>
<myItemName>2</myItemName>
<myItemName>3</myItemName>
</paramList>
</params> |
SOLUTION 1 : J'ai dans un premier temps essayé de faire une Classe contenant un tableau de String
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| class ParamListType {
/**
* @var String[]
*/
public $myItemName;
}
class MyClass {
/**
* @param ParamListType
* @return String
*/
public static function myMethod($params)
{
return 'OK';
}
}
$autodiscover = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeSequence');
$autodiscover->setOperationBodyStyle(array('use' => 'literal'));
$autodiscover->setClass('MyClass');
$autodiscover->handle(); |
Le problème est que je suis parasité par des balises "ITEM" :
Code :
1 2 3 4 5 6
| <params>
<myItemName>
<!--Zero or more repetitions:-->
<item>?</item>
</myItemName>
</params> |
SOLUTION 2 : J'ai essayé de faire un tableau de ma classe
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| class ParamListType {
/**
* @var String
*/
public $myItemName;
}
class MyClass {
/**
* @param ParamListType[]
* @return String
*/
public static function myMethod($params)
{
return 'OK';
}
}
$autodiscover = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeSequence');
$autodiscover->setOperationBodyStyle(array('use' => 'literal'));
$autodiscover->setClass('MyClass');
$autodiscover->handle(); |
Le problème est un peu différent mais sur le fond, c'est la même chose. Encore des ITEM que je ne veux pas
Code :
1 2 3 4 5 6
| <params>
<!--Zero or more repetitions:-->
<item>
<myItemName>?</myItemName>
</item>
</params> |
Auriez-vous une solution simple pour avoir quelques choses comme :
Code :
1 2 3 4
| <params>
<!--Zero or more repetitions:-->
<myItemName>?</myItemName>
</params> |
Merci