Originally posted by Bansilal Haudakari:
Here is my requirement
The user creates new record by selecting "New" value from the dropdown. Then user enters values on form fields and clicks the Submit button. The result is new Record gets created in the database and also gets populated in the dropdown. But the dropdown still shows the "New" value whereas I want the drop down to dynamically change from "New" to newly created value in the drop down
The dropdown is populated from the database as shown below
<h:outputText value="Manufacturer" /> <h:selectOneMenu id="manufList" value="#{manufacturerBean.selectedManufacturer}" > <f:selectItem itemLabel="New" itemValue="New" /> <f:selectItems value="#{manufacturerBean.manufacturerList}" /> <a4j:support action="#{manufacturerBean.loadManufacturerDetails}" event="onchange" reRender="t3,t4,t5,t6,t7,t8,t9,t10" /> </h:selectOneMenu>
Here is the backing bean
public List getManufacturerList(){ logger.info(" *** In getManufacturerList Backing Bean*** "); List<Manufacturer> models = new ArrayList<Manufacturer>(); List<SelectItem> manufacturers = new ArrayList<SelectItem>(); models = manufManager.getManufacturerList(); logger.info(" *** manufManager List Size=*** "+models.size()); for (Iterator it = models.iterator(); it.hasNext();) { Object[] row = (Object[]) it.next(); manufacturers.add(new SelectItem(row[0]+"",row[1]+"")); } return manufacturers; }
Any pointers/suggestions will be highly appreciated
Regards
Bansi
Bansi I think that you can do it filling again the list after the creation of the new record. Maybe if you post the code of your Bean it would be easier to help you.