Zend AMF を使用してリモート オブジェクトを Flex に送信しています。
Constant
クラスを定義し、getASClassName()
メソッドを作成しました。次に、Flex で Action スクリプト クラスを作成しました。
オブジェクトは正常に送信されますがObjects
、Flex では特定のものではなくジェネリックにデシリアライズされます。
編集: Flex のネットワーク モニターで、AMF 値が に設定されていることがわかりますcom.my.project.valueobjects.Constant
。からの配列がevent.result
含まれていますがObjects
。
私は何を間違っていますか?
クラスの PHP 宣言:
<?php
namespace Project\Entity;
class Constant
{
public $id;
public $name;
public $description;
public $value;
public function getASClassName(){
return 'com.my.project.valueobjects.Constant';
}
}
フレックスでのクラス定義:
package com.my.project.valueobjects{
[Bindable]
[RemoteClass(alias="Constant")]
public class Constant{
public var id:Number;
public var name:String;
public var description:String;
public var value:String;
}
PHP で Amf を処理するコードの一部:
$server = new Zend_Amf_Server();
$server = $server->setClass("AmfService");
$server->setClassMap("com.my.project.valueobjects.Constant", "Constant");
PHP からのオブジェクトの配列 (を使用して作成されたダンプprint_r
):
[04-Mar-2012 14:23:08] Array
(
[0] => Project\Entity\Constant Object
(
[id] => 1
[name] => name
[description] => desc
[value] => 5
[_explicitType] => com.my.project.valueobjects.Constant
)