HTTPService-AsyncToken-und AsyncResponder Beispiel
Wo finde ich ein Beispiel für Flex-Anwendung, die implementiert eine HTTPService-asynchron aufgerufen, durch eine AsyncToken und ein AsyncResponder?
Vielen Dank im Voraus
den httpservice senden Sie eine Zeichenfolge wie diese mit einer bestimmten Frequenz:
Zeile Spalte##Anzahl#Zeile Spalte##Anzahl#row#Spalte#Nummer#....
BEARBEITETEN CODE:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application creationComplete="onCreationComplete()"
xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.rpc.remoting.RemoteObject;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;
import mx.rpc.http.mxml.HTTPService;
import mx.rpc.AsyncRequest;
import mx.rpc.AsyncResponder;
import mx.rpc.AsyncToken;
import mx.collections.ArrayCollection;
import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn;
import mx.controls.AdvancedDataGrid;
import mx.controls.Alert;
import mx.rpc.IResponder;
[Bindable]
public var dataList:ArrayCollection;
public function getResults(source:String) : ArrayCollection {
var ac:ArrayCollection = new ArrayCollection();
var data:Array = source.split('#');
for (var i:int = 0; i < data.length; i += 3) {
var dataObj:Object = {row: data[i], column: data[i+1], value: data[i+2]};
ac.addItem(dataObj)
}
return ac;
}
public function result(event:ResultEvent):void{
dataList = getResults( String(event.result) );
}
public function fault(event:FaultEvent) : void {
dataList = getResults(String(event.fault));
}
public function onCreationComplete():void
{
var service:HTTPService = new HTTPService();
service.url = "http://10.15.20.75/server4flex/servlet/Datagen";
service.resultFormat = "text";
var token:AsyncToken = service.send(dataList);
token.addResponder(new mx.rpc.Responder(result, fault));
}
]]>
</mx:Script>
<mx:AdvancedDataGrid id="dg"
dataProvider="{result}"
liveScrolling="true"
x="10" y="10" width="621"
verticalScrollPolicy="on"
>
<mx:columns>
<mx:AdvancedDataGridColumn dataField="row"
headerText="Riga"/>
<mx:AdvancedDataGridColumn dataField="column"
headerText="Colonna"/>
<mx:AdvancedDataGridColumn dataField="value"
headerText="Valore"/>
</mx:columns>
</mx:AdvancedDataGrid>
</mx:Application>
InformationsquelleAutor Franky | 2010-01-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß nicht, was Sie wirklich auf der Suche danach, aber hier oder hier zum Beispiel, sind Weise zu verwenden
AsyncToken
undAsyncResponder
Edit:
dataList
zuBindable
dataList
auf jeder loop-iterationgetResults
irgendwann, wenn Sie Ihre Ergebnisse sind bereitevent
imresult
Funktion ist eineEvent
aber auch einResultEvent
wo es eineresult
Feld mit den DatenDie Aussehen kann, wie diese (ungetestet):
Edit2:
dies ist ein Beispiel mit einer einfachen php-Datei, um die Daten auf einem lokalen web-server.
Naja, ich denke, Sie haben alles, was Sie brauchen, in den beiden oben genannten link. Was verstehst du nicht ?
ich bearbeitet die Frage... das datagrid nichts zurück, wenn ich asyncToken-und asyncResponder und ich kann das problem nicht lösen. Meine Anwendung funktioniert nur, wenn der string hat eine begrenzte Länge, aber ich brauche etwas, das abrufen von Daten aus einer unendlichen Zeichenfolge.
Siehe mein edit für die weitere Erklärung
Ich bearbeitet meine post mit der letzten Version der Anwendung, aber es funktioniert immer noch nicht und ich kann das problem nicht lösen
InformationsquelleAutor Patrick
Gefunden hier.
InformationsquelleAutor James Ward