2009-07-08 7 views
0

Ich arbeite gerade an der Adobe-Schulungsreihe "Flex in der Woche" und habe Übung 9 erreicht, in der es um das Erstellen eines Remote-Service-Anrufs geht. Bis zu diesem Zeitpunkt waren die Datenquelle und die Bilder lokale Assets (in meinem Flash Builder-Projekt unter src/assets).Warum werden meine HTTP-Ressourcen in der Flex in a Week-Lernprogrammreihe nicht geladen?

ich auf die Raumliste durch das:

<mx:HTTPService id="rooms" url="assets/roomList.xml" 
       fault="httpFaultHandler(event)" 
       result="httpResultHandler(event)"/> 

Hier sind die beiden Ergebnis-Handler:

private function httpFaultHandler(event:FaultEvent):void{ 
    Alert.show("There was a problem","Error"); 
} 

private function httpResultHandler(event:ResultEvent):void{ 
    roomList = event.result.rooms.room; 
} 

Allerdings, wenn ich die Anwendung im BlazeDS Behälter laufen lasse, erhalte ich keine Zimmer trotz die Tatsache, dass die Raumliste nach dem Ausführen der Anwendung im Bereitstellungsverzeichnis eindeutig vorhanden ist:

Wie kann ich den Grund für diesen Fehler debuggen? Der vom Flash Builder-Tool verwendete Bereitstellungsprozess ist ziemlich undurchsichtig und die Tomcat-Instanz zeigt keine Werbung für 404s von Flex-Apps an. Gibt es irgendwo einen Eintrag oder etwas, das aktiviert werden muss?

+0

Haben Sie tatsächlich Ihre Ergebnisse und Fehlerrückrufe definiert? Durch den Ausdruck von Fehlerinformationen in httpFaultHandler() können Sie feststellen, warum die erwarteten Ergebnisse nicht angezeigt werden. –

+0

Das ist, was komisch ist; Überprüfen Sie das Fragenupdate für die Fehler- und Ergebnisbehandlungsroutinen. Ich sollte eine Warnung bekommen. –

Antwort

0

Okay, für jeden, der dieses Problem in der Zukunft findet; Dies ist auf das Fehlen einer Socket-Richtliniendatei zurückzuführen, ohne die die Flash-Laufzeitumgebung keine Ressourcen vom lokalen Host laden kann. Am Ende habe ich einen winzigen Flash-Policy-Daemon installiert und launchd in inetd-style eingerichtet. Hier ist die Diskussion auf der Adobe-Website: http://www.adobe.com/devnet/flashplayer/articles/fplayer9_security_07.html