2012-04-03 6 views
0

にBlazeDSのでのRemoteObjectを使用することはできません。は、私は次のコードでのActionScriptプロジェクトにBlazeDSのを接続しようとActionScriptプロジェクト

ro = new RemoteObject(); 
    var cs:ChannelSet = new ChannelSet(); 
    cs.addChannel(new AMFChannel("my-amf", "http://localhost:8080/Ninja/messagebroker/amf")); 
    ro.channelSet = cs; 
    ro.destination = "test"; 
    ro.source = "me.qiankanglai.test"; 

    ro.addEventListener(ResultEvent.RESULT,r1); 
    ro.addEventListener(FaultEvent.FAULT,r2); 
    ro.sayHello(); 

しかし、私は、サーバーを接続することはできません。私は新しいフレックスプロジェクトを作り、作品はうまくいきます。私は、接続の詳細を確認するためにクロムを使用します(要求ペイロードを当初から異なっている)

ActionScriptプロジェクト: as pro

Flexプロジェクト:

flex pro

実際には、私が得ましたactionscriptプロジェクトのエラー:

TypeError: Error #1034: Type Coercion failed: cannot convert [email protected] to mx.messaging.messages.ErrorMessage. 

私は知らないこれら2つのリモートオブジェクトの違いは何ですか?

答えて

0

は、私はちょうど私の質問(関連質問)の右側に解決策を見つけた:

Using RemoteObject (AMF) from a Flash or Pure AS3 Project

を私はちょうど1行必要があります。この分野では

RpcClassAliasInitializer.registerClassAliases(); 

を、stackoverflowのはもっとありますGoogleよりも強力です!

0

メタデータタグ[RemoteClass]を使用することもできますが、私はあなたがしたいことを完全には分かっていません。

+0

ねえ、私はすでにそれを試みましたが、なぜ動作しないのかわかりません。私は周りを検索し、ある人は[RemoteClass(エイリアス= ...)]はフレックスプロジェクトで働いていたが、プロジェクトではないと言った。実際には、このメタデータタグは.mxmlから.as – Kanglai

+0

にRpcClassAliasInitializer.xxxに「変換」されています。ええ、RemoteClassが動作しないことがあることを知りましたので、RpcClassAliasInitializer.registerClassAliases()を使用する必要があります。 以前は問題がありましたが、使用していたJavaクラス階層に関連していました。 – nMoncho

+0

タイプに間違いがあるので、この問題は2日間問題になりました。 :( – Kanglai

関連する問題