Ich versuche, einen Server einzurichten, um Daten-Quelle paged Service. Ich habe alles eingerichtet, so dass ich meine Assembler aufgerufen und bin Werte zurück, aber ich bin nicht immer "ausgelagerte" Anrufe.
Konkret:
public Collection fill(List fillArgs, int begin, int rows)
wird immer aufgerufen mit begin == -1
y rows == -1
anstatt echte Werte zum Durchblättern zu erhalten. Darüber hinaus:
public boolean useFillPage(List fillParameters)
wird nie aufgerufen (meine Implementierung gibt für alle Parameter immer true zurück). Es sieht so aus, als ob es nie aufgerufen wird, weil der JavaAdapter den pageSize-Header nicht vom Flex-Client erhält.
Dies ist meine Zielkonfiguration:
<destination id="invoiceListDataService">
<adapter ref="java-dao" />
<properties>
<scope>session</scope>
<source>com.williams.finance.invoice.dao.InvoiceReviewListAssembler</source>
<network>
<paging enabled="true" pageSize="100" />
</network>
<metadata>
<identity property="invoiceNumber"/>
</metadata>
</properties>
</destination>
Und mein Flex-Code für den Aufruf des Datendienstes:
myDataService = new DataService("invoiceListDataService");
myDataService.autoSyncEnabled=false;
myDataService.fill(invoiceReviewListModel.invoiceList, params);
Übersehe ich hier etwas? Haben Sie eine Idee, wo ich anfangen könnte zu suchen?
0 Stimmen
Ich würde damit beginnen, in der params-Variable zu suchen. Es sollte eine Instanz mit "begin" und "rows" Informationen sein? Vielleicht ignoriert Ihr Flex DataService diesen Parameter.
1 Stimmen
@Travis, Sie haben diese Frage schon vor einiger Zeit gestellt. Haben Sie eine Lösung gefunden? Übrigens: Ich empfehle dringend Charles Proxy für Ihre Netzwerk-Debugging-Bedürfnisse. Es ist ein großartiges Debugging-Tool, mit dem Sie herausfinden können, was tatsächlich zwischen Flex und Server hin und her gesendet wird.