Bonjour,

Sachant que je trouve à peu près tout et son contraire sur le sujet, je me permet d'ouvrir cette discussion !

J'ai une application FLEX qui charge différents modules. Ces modules accèdent à des services php via AMF (ZendAMF).
Lorsque je charge un module, celui-ci récupère bien des données PHP.
Le problème est le suivant : lorsque je décharge le module précédemment ouvert puis que je le recharge, l'appel au service PHP échoue :

Catchable fatal error: Argument 1 passed to MonService::foo() must be an instance of MonVO, instance of stdClass given
En effet, un des paramètres de la méthode appelée est de type MonVO. Cependant, je ne vois pas pourquoi la première fois, le type passé est correct...

Une idée ? Avez vous déjà embarqué des RemoteObject au sein de vos modules ?


Pour info, mes services sont déclarés de cette façon dans mes modules :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
<s:RemoteObject id="ro"
	endpoint="http://127.0.0.1/gateway.php"
	source="MonService"
	destination="MonService"
	showBusyCursor="true">
		<s:method name="foo"
			       result="read_resultHandler(event)"
			       fault="faultHandler(event)"/>
</s:RemoteObject>
Edit : en fait, il semblerait que j'ai ce message dès que je décharge les modules (même sans avoir appelé le service...).
Scénarios faisant apparaître l'erreur :
  • Chargement du module>Appel du service>Déchargement du module>Chargement du module>Appel du service
  • Chargement du module>Déchargement du module>Chargement du module>Appel du service