2009-07-09 5 views
1

Ich schreibe eine kleine Flex-Anwendung, die schließlich PHP-Dienste aufrufen wird, um ihre Arbeit auszuführen. In der Zwischenzeit möchte ich jedoch lokale Daten in XML-Form verwenden, um den Flex-Teil unabhängig vom Datendienst zu entwickeln.Wie kann ich einen Service mit lokalen Daten in Flex 3 ausspionieren?

Was ist der beste Weg, dies zu tun?

Ich möchte einen Dienst wie diese emulieren:

public class Service { 
    public function getIssues(project:String):ArrayCollection {} 
    public function addIssue(issue:Issue):void {} 
    // ... 
} 

Angenommen habe ich die gespeicherten Daten in assets/:

assets/_project1_.data.xml 
assets/_project2_.data.xml 
assets/_project3_.data.xml 

Wenn ich jemals brauchte nur zu laden, würde ich das tun folgende:

<mx:HTTPService id="issueService" 
     url="assets/issues.xml" 
     fault="serviceFaultHandler(event)" 
     result="issueResultHandler(event)"/> 

und der Service aufrufen issuerService.send() verwenden, bevöl meine Ergebnisse wie erwartet. Wie mache ich das, als ob es ein RemoteObject statt wäre, aber meine Daten lokal halten?

Antwort

-1

Der einfachste Weg wäre, einen Server lokal zu betreiben.

+1

Sicher, aber ich versuche speziell, die Arbeit des Schreibens des Servers zu verschieben; Das Ziel meiner aktuellen Übung ist es, Flex-Apps zu schreiben, nicht um PHP-Dienste zu schreiben. –

0

Sie können den HTTP-Service in eine PsuedoRemoteObject-Klasse einfügen, die Ihrer Serviceschnittstelle entspricht und die erwarteten Objekte zurückgibt.

+0

Gibt es dieses Objekt bereits oder muss ich es erstellen? Außerdem überlasse ich mir die Verantwortung für den gesamten Event-Versand; es muss einen besseren Weg geben, oder? –