I'm trying to default a DDC (DropDownChoice) using the model I am passing in. The page is getting passed in a LoadableDetachableModel which is of Type Player. The list to back the DDC is a List<Player>.
LoadableDetachableModel playersModel = new LoadableDetachableModel() { protected Object load() { return playerManager.getPlayersInLeague(getActiveLeague()); } }; And here is the DDC. final DropDownChoice downChoice = new DropDownChoice("name", new Model(), playersModel, new ChoiceRenderer("username", "id")); add(downChoice); downChoice.add(new AjaxFormComponentUpdatingBehavior("onChange") { @Override protected void onUpdate(AjaxRequestTarget target) { setResponsePage(new ViewPicksPage(downChoice.getModel())); } }); The above code works but does not obviously does not default the DDC. I want the default to be the playerModel that is being passed in to the page. If I pass the playerModel into the DDC (instead of the new Model()) I get an error saying that I can't set a model on a LDM (loadabledetachablemodel). What is the correct way to default the DDC? I've read that I shouldn't use a LDM for backing as it is loadable, but then what model should I use? Keep in mind that I am trying to keep the memory footprint low and do not want to serialize objects unless I have to. Tim