Comunidad de diseño web y desarrollo en internet online

[amfphp] Mapeado de clases PHP->AS3

Citar            
MensajeEscrito el 31 Ago 2006 10:07 am
Hola, estoy en una aplicación con Flex2.
No consigo mapear un valor de retorn de PHP a la correspondiente clase AS.

En el método de mi servicio tengo la siguiente expresión de retorno:

Código :

return new Result( true, new Status() );


En Result.php tengo

Código :

public $_explicitType = "org.bestiario.website.Result";

En Status.php tengo

Código :

public $_explicitType = "org.bestiario.website.Status";

Tengo las correspondientes clases Result.as y Status.as en el lado Flex.

En mi debugger HTTP (Charles) se puede ver que el paquete AMF viene con el tipo correcto ( un screenshot: http://www.joangarnet.com/_otras/charles.gif )

Pero cuando el callback se ejecuta:

Código :

public function onResult( event:* = null ):void
{
   var res:Result = Result(event.result);
}

Me lanza la siguiente excepción:

Código :

TypeError: Error #1034: Type Coercion failed: cannot convert Object@d300241 to org.bestiario.website.Result.


Alguna idea??
Saludos!!

P.D. Estoy utilizando la clase de Renaun RemoteObjectAMF0 para llamar a los servicios amfphp, versión 1.2 de AMFPHP y PHP5.

Por Joan Garnet

5 de clabLevel



 

Barcelona

firefox
Citar            
MensajeEscrito el 01 Sep 2006 05:40 am
algun par de ideas.
1. Tu clase de AS, ligala con la de PHP.
[RemoteClass(alias=”org.bestiario.website.Result”)]

2. En el AS donde tienes el callBack, tal vez no estes importando la clase.

Saludos


pd1. por un momento pense que te faltaba crear una nueva instancia, pero no, ese no es el problema.
pd2. Yo no trabajo con RemoteObjectAMF0 :P

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 01 Sep 2006 08:29 am
Gracias por la respuesta.
Corrijeme si me equivoco. El [RemoteClass(alias=”org.bestiario.website.Result”)] es para mapear de AS a PHP, ¿verdad? Si es así no lo necesito para estas dos clases ( Result y Status ) ya que son simplemente contenedores del resultado que PHP devuelve a AS y poniendo un $_explicitType en la clase PHP debería bastar.
En cuanto al punto 2, si que importé las clases.

¿ Qué puede ser ?

Por Joan Garnet

5 de clabLevel



 

Barcelona

firefox
Citar            
MensajeEscrito el 01 Sep 2006 05:30 pm
[RemoteClass], puedes usarlo sin alías, así como esta si no pretendes enviarlo a AMFPHP, pero si pretendes recibirlo.

Con algún debug o analizando directamente el valor, ya viste que contiene event.result?, realmente tiene lo que esperas, ya ví que AMFPHP envía correctamente, pero llega a AS(event.result) como tu esperabas?

Algún bug en el mapeo, similar al BUG en JAVA?
http://www.carlosrovira.com/blog/?p=402

Es raro aparentemente todo esta bien.

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 01 Sep 2006 08:50 pm
mmmm, en flexcoders me comenta Renaun que puede ser un bug en su clase RemoteObjectAMF0 (la que utilizo para hacer las llamadas a los servicios PHP).
El lunes cuando vuelva a la oficina lo miro y comento algo.
Gracias por tu ayuda!

Saludos!

Por Joan Garnet

5 de clabLevel



 

Barcelona

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.