Aide - Recherche - Membres - Calendrier
Version complète : Problème de mise à jour SharedObject
Centre de Formation Flash - Forums Adobe Flash > Rich media et intégration > Flash Media Interactive Server et Flash Remoting
nicolb
Bonjour à tous icon_biggrin.gif

Je me permets de me tourner vers vous car sèche depuis plusieurs jours sur un soucis avec mes SharedObject.
Voici mon problème :

Je suis en train de développer une petite application de partage multimédia avec Flex, FMS3 et amfphp.

Les infos relatives à chaque utilisateur connecté sont stockées dans un SharedObject serveur sour forme d'Object, sous la forme :
monSharedObject.setProperty(userID, userObject)

userObject contient plusieurs infos relatives à l'utilisateur (login, statut...). Mon SharedObject contient donc autant de propriétés que d'utilisateurs connectés. Je n'ai aucun soucis pour la création de ces propriétés à la connexion, que je retrouvent bien en détail dans la console d'administration.

Le problème intervient lorsque je met à jour manuellement (depuis l'appli) les propriétés du SharedObject.
Je procède de cette façon (côté client donc) :

Action Script

//updater le SO --> propriété correspondant à l'Organisateur
usersSo.setProperty(myUserProxy.user[0].uid, myUserProxy.user[0].userVOAsObject);
usersSo.setDirty(myUserProxy.user[0].uid);
trace("users SO modify, property name :", myUserProxy.user[0].uid);

//updater le SO --> propriété correspondant à l'user sélectionné
usersSo.setProperty(usersList.currentItem.uid, usersList.currentItem);
usersSo.setDirty(usersList.currentItem.uid);
trace("users SO modify, property name :", usersList.currentItem.uid);


Lorsque j'effectue cette opération, la seconde propriété mise à jour prend la valeur null côté serveur (détectée dans le onSync du SharedObject) alors que la première est correctement mise à jour.
A ce moment la console d'administration ne peut plus déboguer et me renvoie l'erreur "Object encoding Error...".

Cependant, les propriétés ont l'air d'être correctement mises à jour (pas tout le temps) chez les clients connectés à l'appli. Mais lorsqu'un utilisateur se déconnecte, sa propriété dans le SharedObject a la valeur null (si le code en amont a été exécuté bien sûr)...

quelqu'un a-t-il déjà rencontré ce type de soucis ? La mise à jour de deux propriétés de SharedObject successivement pose-t-elle des problèmes ?

Par avance merci pour votre aide, je commence à désespérer !!! icon_wink.gif
nicolb
Je me suis trompé, la propriété du second SharedObject mis à jour ne devient pas null, mais undefined...
J'ai essayé de mettre à jours de cette manière 3 propriétés de SharedObject contenant des objets à la suite, et seule la valeur de la première propriété est mise à jour correctement et les deux suivantes prennent la valeur undefined...

Une idée ??? icon_question.gif
nicolb
Je viens de trouver la soluce, il faut que je passe l'encodage de mes NetConnection et de mes SharedObject en AMF0.
Est-ce normal que mon serveur (Flash Media Interactive Server 3) encode par défaut en AMF0 et non AMF3 ?
Est-ce du à l'utilisation conjointe d'AMFPHP dans cette application ?
La doc FMS indique "Note: The server always serializes data in AMF0 while executing Flash Remoting functions."...

Merci d'avance pour vos remarques.
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2009 Invision Power Services, Inc.