Hallo,
ich habe hier eine GWT-Anwendung, welche auf eine Datenbank via Hibernate zugreift.
Für dem Datentransfer benutze ich RPCs.
Ich möchte einen Datensatz aus einer Datenbank auslesen, und in eine Liste speichern und zurückgeben.
Ich zeig euch mal den Code:
Wenn ich bei (1) die Größe zurückgeben lasse, ist dieses Ergebnis richtig wie erwartet.
Bei (2) ist die Luste aber leer, weil die Methode ja parallel aufgerufen wird...
Wie kann ich es so machen, dass gewartet wird, bis die Liste komplett gefuellt ist?
ich habe hier eine GWT-Anwendung, welche auf eine Datenbank via Hibernate zugreift.
Für dem Datentransfer benutze ich RPCs.
Ich möchte einen Datensatz aus einer Datenbank auslesen, und in eine Liste speichern und zurückgeben.
Ich zeig euch mal den Code:
Java:
public List<DataObjectDTO> loadObjectList() {
final List<DataObjectDTO> objects = new ArrayList<DataObjectDTO>(0);
// rufe die Methode zum Laden auf Serverseite auf
DBConn.getService().loadAllObjects(new AsyncCallback<List<DataObjectDTO>>() {
@Override
public void onSuccess(List<DataObjectDTO> result) {
for(DataObjectDTO gr : result) {
objects.add(gr);
}
// lass hier die Größe der Liste ausgeben (1)
}
@Override
public void onFailure(Throwable caught) {
}
});
// Lass hier erneut die Listengröße zurückgeben (2)
return objects;
}
Wenn ich bei (1) die Größe zurückgeben lasse, ist dieses Ergebnis richtig wie erwartet.
Bei (2) ist die Luste aber leer, weil die Methode ja parallel aufgerufen wird...
Wie kann ich es so machen, dass gewartet wird, bis die Liste komplett gefuellt ist?