2009-08-20 5 views
0

Webサービス操作のResultプロパティを変更/変更するにはどうすればよいですか?たとえば、次のように私は自分のWebサービスをFlexでのWebService操作のResultHandlerの変更

を宣言している:

<mx:WebService id="ws"> 
    <mx:operation name="Call_One" result="Call_OneRH(event)" fault="Call_OneFH(event)" /> 
    <mx:operation name="Call_Two" result="Call_TwoRH(event)" fault="Call_TwoFH(event)" /> 
</mx:WebService> 

私は再使用することを計画しておりますので、私は、別の結果に操作「Call_One」の結果を変更することができるようにしたいです同じWebサービスですが、結果は異なる扱いを受けます。

は、これが機能するかどうかわからない:非常に認め

ws.operation.Call_One.result = "myOtherResult" 

入力。ありがとう。

答えて

1

ハンドラを操作に直接追加するのではなく、Webサービスにリスナーを追加して結果を処理します。ドキュメントは、結果イベントがWebサービス自体によって処理されない場合に送出されることを示します。

public function addListeners() : void { 
    ws.addEventListener(ResultEvent.RESULT, Call_OneRH); 
} 

public function changeListener() : void { 
    ws.removeEventListener(ResultEvent.RESULT, Call_OneRH); 
    ws.addEventListener(ResultEvent.RESULT, myOtherResult); 

<mx:WebService id="ws"> 
    <mx:operation name="Call_One" fault="Call_OneFH(event)" /> 
    <mx:operation name="Call_Two" result="Call_TwoRH(event)" fault="Call_TwoFH(event)" /> 
</mx:WebService> 
関連する問題