I am working on a JSF page which has a dropdown based on List:
<
The following approach may also be useful in getting value and label using List
Here, facade, statesFacade fetches list of states from database/enterprise bean.
In view (xhtml page):
In the Managed Bean(applicationBean1.java):
private String state;
/**
* @return the stateSelectItems
*/
public List getStateSelectItemsItems() {
stateSelectItems.add(new SelectItem("-1","--- Select state ---"));
int statesCount = statesFacade.count();
List states;
states = statesFacade.findAll();
for (int i = 0; i < statesCount; i++) {
stateSelectItems.add(new SelectItem(states.get(i).getStateSlNo(), states.get(i).getStateName()));
}
return stateSelectItems;
}
public String getSelectedState(){
if("".equals(getState()) || getState() ==null){
return "";
}else{
return "Selected State : " + getStateSelectItems.get(Integer.parseInt(getState())).getValue()+", "++ getStateSelectItems.get(Integer.parseInt(getState())).getLabel();
}
}