Я работаю с Flex 4, вызывая веб-сервисы из JVM 1.6
Я пытаюсь делать асинхронные вызовы Java, чтобы заполнить три комбинированных списка, которые будут отображать страну, штаты и города, эти три связаны (master-slave), но иногда вызовы не выполняются, или они не завершены, и я думаю, что это потому, что они асинхронные, как я могу быть уверен, что я делаю вызов для заполнения следующего выпадающего списка, когда основной выпадающий список (страна) заполнена?
защищенная функция comboCountry_changeHandler (idCombo: String): void {
selectedComboCountry= idCombo;
var countryId:String;
if(selectedComboCountry == comboCountry.id){
countryId = String(comboCountry.selectedItem.countryId);
}else if(selectedCombocountry == combocountrySuc.id){
countryId = String(comboCountrySuc.selectedItem.countryId);
}
obtainStatesResult.token = wsfacturas.obtainStates(countryId);
}
защищенная функция receiveStatesResult_resultHandler (событие: ResultEvent): void {var StateListVo: ArrayCollection = receiveStokenRult..result as ArrayCollection;
if(selectedComboCountry == "comboCountrySuc"){
StateListsSuc.removeAll();
CityListsSuc.removeAll();
for (var d:int = 0; d < StateListVo.length; d++){
var estSuc:State = StateListVo[d];
StateListsSuc.addItem(estSuc);
}
comboStateSuc.dataProvider = StateListsSuc;
}
else if(selectedCombocountry == "combocountry"){
StateListsEmp.removeAll();
CityListsEmp.removeAll();
for (var i:int = 0; i < StateListVo.length; i++){
var estEmp:State = StateListVo[i];
StateListsEmp.addItem(estEmp);
}
comboState.dataProvider = StateListsEmp;
} else {
for (var f:int = 0; f < StateListVo.length; f++){
var est:State = StateListVo[f];
StateListsSuc.addItem(est);
StateListsEmp.addItem(est);
}
comboState.dataProvider = StateListsEmp;
comboStateSuc.dataProvider = StateListsSuc;
}
}