2011-05-20 8 views
0

この質問は多くの場所で議論されていますが、解決策のどれも私にとってはうまくいかないようです。私のmxmlコードでは、すべてが完全に機能します。ActionScriptを使用してリモートオブジェクトにアクセスするにはどうすればよいですか?

<s:RemoteObject id="remotetest" destination="Hibernatetest" endpoint="http://praiseJESUS/blazeds/messagebroker/amf" result="remotetest_resultHandler(event)" fault="remotetest_faultHandler(event)"/> 

<s:Button x="1248" y="401" label="Laden" click="remotetest.getCells()"/> 

protected function remotetest_resultHandler(event:ResultEvent):void 
{ 
    var cellList:ArrayCollection = event.result as ArrayCollection; 
} 

これは完全に機能します。これに対して、これ以外の作業はありません:

var ro:RemoteObject = new RemoteObject; 
var cs:ChannelSet = new ChannelSet; 
var c:Channel = new AMFChannel("my-amf","http://JESUSAGAIN/blazeds/messagebroker/amf"); 
cs.addChannel(c); 
ro.channelSet = cs; 
ro.destination = "MyClass"; 
ro.source = "myNamespace.MyClass"; 
ro.getOperation("myfunction()").send(); 

これはなぜ動作しないのですか?何かヒント?

mx_internal function initEndpoint():void 
{ 
    if (endpoint != null) 
    { 
     var chan:Channel; 
     if (endpoint.indexOf("https") == 0) 
     { 
      chan = new SecureAMFChannel(null, endpoint); 
     } 
     else 
     { 
      chan = new AMFChannel(null, endpoint); 
     } 
     channelSet = new ChannelSet(); 
     channelSet.addChannel(chan); 
    } 
} 

これは、エンドポイントが定義されている場合は、RemoteObjectのクラスは、独自のChannelSetを作成することを、示しています。RemoteObjectののコードを検査する際に

+0

[OK]を、私は少しの周りいじっ:「cs.addEventListener( "channelConnect" です。、handlechannel);保護された関数handlechannel(イベント:ChannelEventの):ボイド{ \t \t \t \t IF(event.connected){textfeld.text = "わーい"}; \t \t \t}チャネルが接続されていないことがわかりました。理由を理解していない。 – Kai

+0

ブラウザを開いてhttp:// JESUSAGAIN/blazeds/messagebroker/amfと入力すると200 OK応答コードが届いていますか? –

+0

URLを入力すると、コードが返されません。エラーコードはまったくありません。なぜそれが重要なのでしょうか?私が言ったように、それはmxml構文で動作し、blazeDSコンソールも動作します。 – Kai

答えて

1

は、私は、次のコードスニペットを見つけました。私の最初の試みとは違って、次のコードが実際に動作するので、これは私のやり方と同じであるように思えます。

var ro:RemoteObject = new RemoteObject("Hibernatetest"); 
      ro.endpoint = "http://Jesus/blazeds/messagebroker/amf"; 
      ro.myfunction(); 

1つのチャンネルセットを定義するときには注意が必要です。たぶん、誰かが私にこのことについて教えてくれるかもしれない。

関連する問題