[ext-gwt] ComboBox store resettet?

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [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:

    Source Code

    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. });
    Display All


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

    Source Code

    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. });
    Display All

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

    Source Code

    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?

    The post was edited 2 times, last by 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:

    Source Code

    1. cmbxPlaylist.setTriggerAction(TriggerAction.ALL)


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

    lg
    reappy