2009-08-20 6 views
0

Wie ändert/ändert man die Result-Eigenschaft eines Web-Service-Vorgangs?Ändern von ResultHandler des WebService-Vorgangs in Flex

Zum Beispiel habe ich meine WebService erklärte wie folgt:

<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> 

Ich möchte ein anderes Ergebnis das Ergebnis der Operation „Call_One“, um in der Lage zu ändern, da ich die wiederverwenden bin der Planung gleicher Web-Service, aber das Ergebnis würde anders behandelt werden.

ist nicht sicher, ob das funktionieren würde:

ws.operation.Call_One.result = "myOtherResult" 

Eingänge sehr geschätzt. Vielen Dank.

Antwort

1

Fügen Sie der Prozedur keinen Handler direkt hinzu, aber fügen Sie dem Webservice einen Listener hinzu, um das Ergebnis zu verarbeiten. In der Dokumentation wird angegeben, dass das Ergebnisereignis ausgelöst wird, wenn es nicht vom Webdienst selbst verarbeitet wird.

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>