File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes JSF and the fly likes populating drop down list from database table Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » JSF
Bookmark "populating drop down list from database table" Watch "populating drop down list from database table" New topic

populating drop down list from database table

George Gates
Ranch Hand

Joined: Jul 11, 2008
Posts: 34

I am sorry that i posted this topic previously in wrong forums. please excuse me for that.

I am using jsf.

i have following questions:
1) How can we populate a drop down list from a database table? My drop down list should contain all the section numbers that satisfy a particular condition. I have written a query that would fetch all the correct section numbers. Now I want to add them into a drop down menu. Can someone tell me any way to achieve it?

2) Is there any way by which we can populate a drop down using all the elements in the array? For example:
Let the array be
String s []={"abc","def","xyz"};
How do i get the three string instances into the drop down menu?

3) Any other data structure (HashMap or Hashtable) will also do.

Sample code would help.


Regards,<br />George Gates
Bear Bibeault
Author and ninkuma

Joined: Jan 10, 2002
Posts: 63867

Please do not cross-post the same question in multiple forums. It wastes people's time when multiple redundant conversations take place. Please read this for more information.

[Asking smart questions] [About Bear] [Books by Bear]
James Greenberg

Joined: Jul 09, 2008
Posts: 19
I hope I understood you correctly, unless it has been answered somewhere else,here's how I solved it: so you create the component GUI and bind it to the managed bean that fetches the info from the DB.
In my case I needed a class that fetches several country names, the final result looks like this:

The gui component:
<pre name="code" class="core">
<h:selectManyListbox value="#{CountriesBean.selectedItems}" size="8" styleClass="defaultText">
<f:selectItems value="#{CountriesBean.selectItems}" />
The class is declared in faces-config.xml like this:
<pre name="code" class="core">
Its source code:
<pre name="code" class="core">
package xlinuks;

import javax.faces.model.*;
import java.util.*;

public class Countries {

List<String> selectedItems; // + getter + setter
List<SelectItem> selectItems; // + getter only

public Countries() {

public List<SelectItem> getSelectItems() {

if( selectItems == null ) {
//so it actually calls another class called Connector
//that fetches the data from the DB
selectItems = Connector.getCountries( language );

return selectItems;

public void setSelectItems( List<SelectItem> selectItems ) {
this.selectItems = selectItems;

public List<String> getSelectedItems() {
return selectedItems;

public void setSelectedItems( List<String> selectedItems ) {
this.selectedItems = selectedItems;
These are the main steps, unfortunately I can't post a detailed description.
I agree. Here's the link:
subject: populating drop down list from database table
It's not a secret anymore!