Hallo,
Nachdem ich den ganzen Tag Google durchforstet und Gefundenes ausprobiert habe, muss ich aufgeben und versuchen, jemanden direkt zu fragen.
Ich habe ein Flex 3 Projekt, in dem ich eine aus einer XML Datei ausgelesene Übersicht generiere. Es sind potentiell sehr viele verschiedene XML Dateien zur Auswahl; welche genommen werden soll übergebe ich als Flash-Vars.
Die Flash-Var wird nach creationComplete ausgelesen und in {section} geschrieben.
Das ist soweit einfach und geradeaus und findet sich in diversen Büchern, Tutorials etc in leichten Variationen so wieder und funktioniert. Die Codezeile für den HTTPService ist
Aber: Jetzt kommt eine Änderung der Anforderung vom Kunden.
Das hat zur Folge, dass die Section nicht mehr direkt per Flash-Var übergeben wird, sondern in der Flash-Var steht ein Wert, den ich ein einer XML-Datei nachschlagen muss, wodurch ich die Section rauskriege.
Gewissermaßen eine Art Index: in der Flash-Var steht der anzuzeigende Begriff, und in der XML-Datei ist verzeichnet, in welchem Kapitel welcher Begriff vorkommt.
Meine Ansätze sind bisher alles Variationen von
, wobei die Variable section des zweiten services in dem Handler read_word_list des ersten services gesetzt wird.
Bei diesem Ansatz ist es aber so, dass es anscheinend keine Möglichkeit gibt, dass der Zugriff auf die Wortliste stattfindet, bevor die zweite Zeile
aufgebaut wird.
Der HTTPService getSlides verweist also anscheinend immer auf den Default-Wert von section, weil die XML-Datei von wordList zu spät ausgewertet wird.
Ich habe auch schon versucht, die Wortliste nicht per HTTPService auszulesen, sondern direkt in der init-Funktion in AS gecoded. Aber das Timing-Verhalten ist bei mir das gleiche.
Ich habe vorhin den Versuch abgebrochen, auch getSlides in ActionScript selbst umzusetzen, weil die Umwandlung von XML und eine ArrayCollection noch einige andere Hürden birgt.
Ich kann mir nicht vorstellen, dass das eine so abgefahrene Anforderung ist und hatte gedacht, ich würde im Netz irgendwo einen Ansatz finden.
Aber anscheinend suche ich falsch.
Kann mir hier einer auf die Sprünge helfen?
Vielen Dank und beste Grüße
Gerald