2010-08-18 7 views
0

je suis en utilisant un back-end Rails avec mon App et d'obtenir un AsyncToken en revint (DB-Call pour être précis)Flex mise en œuvre AsyncToken on Rails

Pour autant que je sais que le AsyncToken retourne un événement de résultat lorsque fait charger toutes les données de la demande, de cette façon, il est possible de s'assurer que toutes les données ont été chargées avant d'exécuter une fonction qui utilise les données.

i essayé la mise en œuvre suivante pour obtenir le AsyncToken converti en un tableau et tracer ses objets comme des chaînes à l'utilisateur:

var dataSrv:services.databaseservice.DatabaseService = new services.databaseservice.DatabaseService; 
    dataSrv.addEventListener(ResultEvent.RESULT, dbListener); 

    //DBOPERATION returns my AsyncToken 
    var listData:AsyncToken = dataSrv.DBOPERATION; 

    var responder:AsyncResponder = new AsyncResponder(resultHandler, faultHandler); 
    listData.addResponder(responder); 



    public function resultHandler(event:ResultEvent, token:Object=null):void{ 
     var output: Array = (event.result as Array); 
     for (var i:int = 0; i<output.length; i++){ 
     Alert.show(output[i].toString()); 
     } 
     } 

     public function faultHandler(event:FaultEvent, token:Object=null):void{ 
     Alert.show("FAULT: " + event.fault.message); 
     } 

Mais je continue à obtenir une erreur « null objet pointeur »!

Répondre

1

Ok ici comment cela fonctionne:

var output:ArrayCollection = (event.result as ArrayCollection); 
for (var i:int = 0; i<output.length; i++) 
{ 
     // where VARIABLE is the name of the transmitted data-variable 
    Alert.show(output[i].VARIABLE); 
} 

espoir que cela aide les autres. Thx pour les gars de l'aide, stackoverflow est juste génial!

0

Vous pouvez ajouter un point d'arrêt sur la ligne suivante

var output: Array = (event.result as Array); 

Ensuite, allez à la perspective de débogage Flash, dans le volet « Variables », vous devriez être en mesure d'accéder aux propriétés de l'événement et de voir le contenu de la propriété de résultat.

Si la propriété est NULL, vous pouvez vérifier ce qui est de retour Rails

+0

Merci mon pote, je ne pensais pas aux fonctionnalités de débogage de Flex! J'ai été en mesure de résoudre le problème avec le débogueur, voir le post suivant. – masi