Llenar un Select One choice en ADF 11g en Java.

En un proyecto en el que estoy trabajando ha surgido la necesidad de llenar Select One Choice con datos que no proviene de un Bussines Component por lo que aqui les tengo una solución de como llenar con java este tipo de elementos.

Es necesario que nuestro selectonechoice contenga un elemento de tipo f:selectItems y este a su vez este asociado a un Bean.

Aqui tienen el codigo ejemplo para llenar este tipo de elementos.

public void llenarCombo(){ 
SelectItem si;
List<Selectitem> datos = new ArrayList<Selectitem>(); 

si = new SelectItem(); 
si.setLabel("Dato1"); 
si.setValue("Valor1"); //Este elemento puede ser Integer,Boolean etc.. 

//Añadimos el elemento a nuestra lista 
datos.add(si);
//Añadimos un segundo elemento
si = new SelectItem(); 
si.setLabel("Dato2");
si.setValue("Valor2"); //Este elemento puede ser Integer,Boolean etc..

//Añadimos el elemento a nuestra lista 
datos.add(si); 
//Asociamos la lista de elementos al elemento f:selectItems
mySelectItems.setValue(datos); 

//Hacemos un partialTrigger al objeto SelectOneChoice
RequestContext.getCurrentInstance().addPartialTarget(mySelectOneChoice);   
}

Este metodo tambien es funcional, para los objetos Select Many Choice List, Select One List Box, Select Order Shuttle, Select Many Shuttle, Select Many Checkbox etc…

Espero le sea de ayuda y espero sus comentarios.

2 comentarios en “Llenar un Select One choice en ADF 11g en Java.

  1. hola, soy nuevo en el uso de ADF 11g y mi pregunta es la siguiente… el IDE me genera dos objetos en el backingBean… private RichSelectOneChoice soc1;private UISelectItems si1;debo agregar el SelectItem en el metodo llenar? y mi otra pregunta es en donde debo meter el metodo en el ChangeAttributeListener?saludos

  2. Que tal eyiCocko:Es correcto te genera dos objetos:En realidad lo puedes declarar como una variable de clase, pero toma en cuenta que casa que desees agregar un SelectItem a la lista debes invocar el constructor de este. para evitar sobreescribir algun dato que este ya contenga.Para este ejemplo la funcion llenar se ejecutaria mediante la acción de un botón en donde declararlo eso dependera de tus necesidades.Saludos y gracias por seguirnos

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s