[AMF] Class mapping difficile en AS3. ;-)

2 views
Skip to first unread message

ths otra

unread,
Jun 9, 2009, 4:38:40 AM6/9/09
to veg...@googlegroups.com
hello !


Mon titre fait référence à l'article de Ekameleon sur le Class Mapping... j'ai quelques difficultés ... ! Bon, j'ai d'abord un peu transpiré à l'actualiser à la version actuelle du dépôt (mais là encore ça permet de mieux comprendre) et là je bloque un peu, je vous raconte:

Je suis toujours dans mon test de asguard.remoting.* (as3 - version remoting avec Asguard) ... ça me retourne :

> start
-----------
> result : [object Object]
-----------
> finish


Y'a t-il un lien avec le fait que amfPHP 1.9 n'a pas de advancedsettings.php ? je ne peux donc pas faire les modifs. Je ne vous mets pas mes codes, ce sont les mêmes que dans l'article (MAJ)

Voilà, si vous avez une idée ... ça m'intéresse !


Bonne journée à tout le monde,

Thomas

ekameleon

unread,
Jun 9, 2009, 4:46:26 AM6/9/09
to veg...@googlegroups.com
Hello :)

Regarde :

#AS3 value object en classmapping :

http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/examples/asgard/net/remoting/trunk/examples/vo/UserVO.as

#PHP value object PHP :

http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/examples/asgard/net/remoting/trunk/deploy/php/src/test/vo/UserVO.php

Tu verras que par rapport à mon tuto, j'utilise de préférence maintenant la propriété $_expliciteType pour fixer le class mapping.

Ensuite faut pas oublier côté AS3 de lancer le registerClassByAlias :

http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/examples/asgard/net/remoting/trunk/examples/ExampleRemoting02.as

Et pour le service PHP :

http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/examples/asgard/net/remoting/trunk/deploy/php/services/TestClassMapping.php

Tout l'exemple se trouve dans le SVN de ASGard :

http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/examples/asgard/net/remoting/trunk/

Sinon en "externals" dans le SVN de VEGAS dans AS3/trunk/bin/tests/asgard/net/remoting !

Prend le temps de bien regarder les exemples sur le SVN qui sont mis à jour.. tu as toutes les sources ;)

PS : faudrait que je teste AMFPHP 1.9 mais devrait marcher pareil

EKA+ :)

eKameleon

unread,
Jun 9, 2009, 4:55:25 AM6/9/09
to VEGAS - ECMASCript & ActionScript OpenSource framework
Hello :)

je vais essayer de reprendre aujourd'hui ou demain ce tuto... je le
mettrais au goût du jour sur mon google site :) Je vous tiens au
courant.

EKA+ :)

On 9 juin, 10:46, ekameleon <ekamel...@gmail.com> wrote:
> Hello :)
>
> Regarde :
>
> #AS3 value object en classmapping :
>
> http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/exampl...
>
> #PHP value object PHP :
>
> http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/exampl...
>
> Tu verras que par rapport à mon tuto, j'utilise de préférence maintenant la
> propriété $_expliciteType pour fixer le class mapping.
>
> Ensuite faut pas oublier côté AS3 de lancer le registerClassByAlias :
>
> http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/exampl...
>
> Et pour le service PHP :
>
> http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/exampl...
>
> Tout l'exemple se trouve dans le SVN de ASGard :
>
> http://code.google.com/p/as-gard/source/browse/trunk/AS3/trunk/exampl...
>
> Sinon en "externals" dans le SVN de VEGAS dans
> AS3/trunk/bin/tests/asgard/net/remoting !
>
> Prend le temps de bien regarder les exemples sur le SVN qui sont mis à
> jour.. tu as toutes les sources ;)
>
> PS : faudrait que je teste AMFPHP 1.9 mais devrait marcher pareil
>
> EKA+ :)
>
> Le 9 juin 2009 10:38, ths otra <ths.o...@gmail.com> a écrit :
>
> > hello !
>
> > Mon titre fait référence à l'article de Ekameleon sur le Class Mapping...
> > j'ai quelques difficultés ... ! Bon, j'ai d'abord un peu transpiré à
> > l'actualiser à la version actuelle du dépôt (mais là encore ça permet de
> > mieux comprendre) et là je bloque un peu, je vous raconte:
>
> > Je suis toujours dans mon test de *asguard.remoting.** (as3 - version
> > remoting avec Asguard) ... ça me retourne :
>
> > > start
> > -----------
> > > result : [object Object]
> > -----------
> > > finish
>
> > Y'a t-il un lien avec le fait que amfPHP 1.9 n'a pas de *
> > advancedsettings.php* ? je ne peux donc pas faire les modifs. Je ne vous

ths otra

unread,
Jun 9, 2009, 5:34:27 AM6/9/09
to veg...@googlegroups.com
Super, je ne pensai pas, merci. Effectivement ça à l'air d'aller mieux.Par contre, impossible d'encoder en ObjectEncoding.AMF3 pour AMFphp 1.9. Mais je vais tester plus longuement... ;-)

[Boost]

unread,
Jun 9, 2009, 5:36:20 AM6/9/09
to veg...@googlegroups.com
Salut ;)

il faut que tu mettes la valeur 0 à la propriété objectEncoding

et après cela devrait le faire ;)

++Taz

ths otra

unread,
Jun 9, 2009, 6:53:22 AM6/9/09
to veg...@googlegroups.com
salut,

Merci de ta réponse ... mais non, ça ne fait rien. je suis passé à l'exemple1 avec les sources du Dépôts et j'en arrive au même résultats.

Quand je fais:

$data = mysql_query("SELECT id_reflet,texte FROM spip_censures WHERE id_reflet='$domaine' ORDER BY date LIMIT 1");
return $data; // [object object]

ou ça marche quand je fais ça:

return 10; //10
return "toto"; // toto

Donc, puisque je galère avec un recordSet, je me suis dis qu'il fallait faire:
protected function result( e:RemotingEvent ):void
      {
             trace("-----------") ;
             trace("> service : " + e.target ) ;
             trace("> result  : " + e.result ) ;
             trace("-----------") ;
     
      
             for ( var i in e.serverInfo ) { trace( i, " : " + e.serverInfo[i] ); }
             
        }

mais il n'y a pas de propriété serverInfo sur RemotingEvent ... et la classe RecordSet (older asgard.data.remoting qui semblait faire ça, n'est plus là !). J'ai un code qui fonctionne bien si je fais compose un XML dans string ($xml) au sein du php puis que je fais return $xml pour le transformer en XML dans flash. Mais je pouvais faire sans ... ça serait mieux.

Une petite idée ?

pardon pour l'acharnement et mon débutantisme aigu ... très aigu !!  ;-)

ekameleon

unread,
Jun 9, 2009, 8:12:31 AM6/9/09
to veg...@googlegroups.com
hello :)

Oublie la classe RecordSet et pense à renvoyer un Array de VO côté php, tu peux avec très peu de code te faire un script pour généraliser tes requêtes SQL et renvoyer les Array comme il faut, exemple :


Je te conseille vivement d'installer mon framework documentaire AST'r avec son SVN dédié qui te montrera des exemples d'implémentation basés sur VEGAS et surtout l'exemple eGallery advanced qui montre comment utiliser un service remoting et un RemotingServiceListener custom avec IoC.

J'ai abandonné en AS3 le portage de la classe RecordSet car franchement elle est tout sauf optimale et vaut mieux bien maitriser ce que l'on fait côté serveur ... c'est simple et cela marche nickel sans la classe de Adobe ;)

EKA+ :) 
Reply all
Reply to author
Forward
0 new messages