我正在构建一个使用Flex 4.5和Zend_AMF作为我的AMF端点的应用程序。AMF类映射不起作用
我想将一个名为CRequest的类映射到一个名为Request in Flex的类中。
这是我的PHP类:
<?php
namespace app\web;
class CRequest{
public $_explicitType = 'com.site.remote.Request';
public $stuff1;
public $stuff2;
}
这是ActionScript类:com.site.remote.Request
package com.dreamatique.remoting
{
[Bindable]
[RemoteClass(alias="com.site.remote.Request")]
public class Request
{
public var stuff1:String;
public var stuff2:String;
public function Request()
{
}
}
}
作为一个测试,我做了终点返回的实例CRequest
来自PHP端,不管请求是什么。
我然后产生一个远程对象调用是这样的:
var remoteObject:RemoteObject = new RemoteObject();
remoteObject.endpoint = "http://localhost/to/my/amf/endpoint";
remoteObject.showBusyCursor = true;
remoteObject.source = 'testing';
var op:AbstractOperation = remoteObject.getOperation(null);
op.addEventListener(ResultEvent.RESULT, result);
op.send();
public static function result(event:ResultEvent):void{
trace(event.result);
trace(Class(getDefinitionByName(getQualifiedClassName(event.result))));
Alert.show(event.result.toString());
}
的问题是,结果返回类型为ObjectProxy
,而不是Request
。我究竟做错了什么?
就是这样!玩过之后,我发现如果我创建了一个实例'var testing:Request;'! – F21