GWTAsyncCallbackから取得したコンテンツで更新したい配列premisasObtenidasがあります。呼び出しは正常に機能し、onSuccessのコードが実行されますが、premisasObtenidasに返すものを追加して、getPremisasFromServerメソッドに返すと、空のリストが表示されます。
AsyncCallbackでの成功から取得したリストであるgetPremisasFromServerから戻るにはどうすればよいですか?
private List<PremisaDTO> getPremisasFromServer() {
final List<PremisaDTO> premisasObtenidas = new ArrayList<PremisaDTO>();
//premisasObtenidas is declared on the outside class
myService.mostrarPremisas(
new AsyncCallback<List<PremisaDTO>>() {
public void onFailure(Throwable caught){
Window.alert("Falla al cargar premisas" + caught.getMessage());
}
public void onSuccess(List<PremisaDTO> premisasEnBD){
Window.alert("Exito al obtener premisas " + premisasEnBD.get(0).getTextoPremisa());
for (int i=0; i<premisasEnBD.size();i++){
PremisaDTO aux = new PremisaDTO();
aux.setId(premisasEnBD.get(i).getId());
aux.setTextoPremisa(premisasEnBD.get(i).getTextoPremisa());
premisasObtenidas.add(aux);
}
}
} );
return premisasObtenidas; //here premisasObtenidas has size 0
}