AMFエンドポイントとしてFlex 4.5とZend_AMFを使用してアプリケーションを構築しています。AMFクラスマッピングが機能しない
PHPのCRequestというクラスをFlexのRequestというクラスにマップしたいと思います。
これは私の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()
{
}
}
}
、私はエンドポイントがのインスタンスを返してきましたPHP側からのCRequest
、要求に関係なく。
は、私は、このようにリモートオブジェクトの呼び出しを作っています:
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