[ext-gwt] ComboBox store resettet?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [ext-gwt] ComboBox store resettet?

    Hi,

    ich versuche mir Gwt etwas näher zu bringen.
    Um genau zu sein benutzer ich dazu noch gxt(ext gwt von sencha).

    Ich versuche eine ComboBox zu erstellen und deren Store aus einer Datenbank zu befüllen.
    Wenn ich die Combobox dann expande sehe ich auch alle Einträge. Nach dem ich einen eintrag ausgewählt habe verschwinden alle items aus dem Store (nur der gewählte eintrag ist noch im Store).
    Dh. es ist nach einmaligem auswählen eines Items nicht mehr möglich etwas anderes auszuwählen.

    So erstelle ich die Combobox:

    Quellcode

    1. cmbxPlaylist = new ComboBox<BeanModel>();
    2. cmbxPlaylist.addStyleName("paddingLeft5px");
    3. cmbxPlaylist.addStyleName("marginTop5px");
    4. cmbxPlaylist.addStyleName("playListWidth");
    5. lstStore = new ListStore<BeanModel>();
    6. cmbxPlaylist.setStore(lstStore);
    7. cmbxPlaylist.setFieldLabel("Playlist");
    8. cmbxPlaylist.setDisplayField("name");
    9. cmbxPlaylist.setEmptyText("Playlist auswaehlen...");
    10. cmbxPlaylist.addSelectionChangedListener(new SelectionChangedListener<BeanModel>() {
    11. @Override
    12. public void selectionChanged(SelectionChangedEvent<BeanModel> se) {
    13. playListChanged(se);
    14. }
    15. });
    Alles anzeigen


    Der Store selbst wird später befüllt wenn das Callback vom Server zurück kommt:

    Quellcode

    1. entityService.findAll(EntityClassNames.PLAYLIST_DTO, new AsyncCallback<List<PlayListDto>>() {
    2. @Override
    3. public void onFailure(Throwable caught) {
    4. System.out.println(caught.getMessage());
    5. }
    6. @Override
    7. public void onSuccess(List<PlayListDto> result) {
    8. initPlayListSelector(result);
    9. }
    10. });
    Alles anzeigen

    Nach dem "initPlayListSelector(result)" ist die Combobox befüllt und alle Einträge sind vorhanden.

    Quellcode

    1. private void initPlayListSelector(List<PlayListDto> binding) {
    2. cmbxPlaylist.getStore().add(factory.createModel(binding));
    3. cmbxPlaylist.enable();
    4. }


    Um auszuschließen das ich nicht versehentlich den store zerstöre hab ich versuchsweise den SelectionListener von der ComboBox entfernt. es passiert also von meiner Seite aus gar nichts wenn man einen Eintrag auswählt.
    Dennoch ist nach einem Select der Store der ComboBox leer (bis auf den gewählten Eintrag).

    Ich habe auch schon versucht den Store mit einem RpcProxy zu befüllen Dies hat aber zum gleichen Ergebnis geführt.

    Kennt das problem jemand oder weiß was ich da falsch mache?

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von reappy ()

  • Nachdem ich jetzt ein Monat lang keine Zeit hatte an meinem kleinen Projekt weiter zu arbeiten, bin ich heute mal Schritt für Schritt durchgegangen und hab herausgefunden das nicht der Store resetted sondern das der Text den ich beim ersten auswählen in der Combobox stehen hab als Filter fungiert.

    Die Lösung war ein simples:

    Quellcode

    1. cmbxPlaylist.setTriggerAction(TriggerAction.ALL)


    damit der Name der bereits gewählten Objektes nicht als Filtervalue für die Ergebnisliste genutzt wird....

    lg
    reappy