Wicket DropDownChoice valore del modello impostazione
-
26-10-2019 - |
Domanda
Ho una tabella (Dataview) con contenuti provenienti da un database, in cui ogni riga / oggetto ha un pulsante "Modifica". Quando provo a modificare l'oggetto, il DropDownChoice-value (in forma) non viene aggiornato correttamente (anche se è corretto nel database). Il valore che viene impostato nel DDC è il primo elemento nella (ordinate) Lista "placeList", dove voglio, ovviamente, il valore corretto dal mio oggetto (event.getPlace (). GetName ()).
Ecco il codice (wicket 1.5):
List<Place> placesList = UtGuidenApplication.getInstance().getUgpService().getAllPlaces();
Collections.sort(placesList);
DropDownChoice<Place> selectablePlaceField = new DropDownChoice<Place>("Sted", new PropertyModel<Place>(event, "eventPlace.name"),
placesList, new ChoiceRenderer<Place>("name"));
utguidenEventForm.add(selectablePlaceField);
Chiunque?
Saluti, Terje Eithun, Norvegia
Soluzione
Penso che tu abbia un errore nel modello. Hai scritto new PropertyModel<Place>(event, "eventPlace.name")
che contiene il nome del vostro evento come modello, ma l'elenco delle scelte contiene posti. Penso che utilizzando new PropertyModel<Place>(event, "eventPlace")
dovrebbe risolvere il problema.