我正在構建一個使用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