DB からデータをフェッチする Dynamic ComboBox を作成したい
(他のパネルの)いくつかのボタンを押すと、コンボボックスをリロードしたいと思います。
ComboBox Store Datatype : List List を取得する RPC 呼び出し (RPCProxy) を作成しました
ただし、ローダーはBeanModelインスタンスを拡張するストアにのみマップされるため、ローダーを作成してComboBoxストアにマップすることはできません。そのため、ロード中に一度だけデータを取得できますが、ローダーを使用できないため、データを再取得することはできません。
コードの一部を次に示します。
SimpleComboBox myCombo = new SimpleComboBox(); リスト myStore = 新しい ArrayList();
XX.getService().getMyDD(userData.getId(), weekOffset, new AsyncCallback<List<String>>() {
public void onFailure(
Throwable caught) {
MessageBox.alert(UIConstants.ERROR,caught.getMessage(),
null);
}
public void onSuccess(List<String> result) {
for(String str: result)
{
myStore.add(str);
}
myCombo.removeAll();
myCombo.add(myStore);
myCombo.setSimpleValue(UIConstants.ALL);
}
});
RpcProxy<List<String>> userTypeProxy = new RpcProxy<List<String>>() {
@Override
protected void load(Object loadConfig,
AsyncCallback<List<String>> callback) {
try {
System.out.println("In Loader: my: "+my);
XX.getService().getMyDD(userData.getId(), weekOffset,
callback);
} catch (Exception e) {
MessageBox.alert(UIConstants.ERROR,
UIConstants.ERROR_USER_RETRIEVED, null);
}
}
};
ListLoader など、ComboBox に任意のタイプのローダーを実装できるかどうか教えてください。事前に助けていただければ幸いです。