Buscar
Social
Ofertas laborales ES

Foro sobre Java EE > Combobox Dependientes

Hola Amigos, estoy partiendo en java y estoy programando una aplicacion web y tengo el siguiente problema , en un formulario tengo dos combobox: el primero se carga bien con marcas de autos (las saco de una BBDD) y el segun se debe cargarse con los modelos (de la misma BBD) de la marca seleccionada. pero al selecionar la marca no pasa nada , nisiquiera va al metodo en el listener aqui les pongo el codigo de el bean correspondiente . ojala me puedan ayudar o publicar un ejemplo de como se implementa, desde ya gracias.

<td><h:outputLabel value="Marca : " /></td>
<td><p:selectOneMenu id="marca value="#{formVehiculoBean.vehiculoNuevo.marcaVehiculo}"> //(marcaVehiculo este es un DTO)
<f:selectItem itemLabel="Seleccione" />
<f:selectItems value="#{formVehiculoBean.listaMarcasObtenidas}"
//listaMarcasObtenidas es un arreglo que traetodas las marcas
var="e" itemValue="#{e}" itemLabel="#{e.marcaDescripcion}" />
<p:ajax update="modelo"
listener="#formVehiculoBean.listaModelos}" />
</p:selectOneMenu> </td>
</tr>
<tr>
<td><h:outputLabel value="Modelo : " /></td>
<td><p:selectOneMenu id="modelo" value="formVehiculoBean.vehiculoNuevo.modeloVehiculo.idModelo}">
<f:selectItem itemLabel="Seleccione" />
<f:selectItems value="#{formVehiculoBean.listaModelosObtenidos}"
var="e" itemValue="#{e}" itemLabel="#{e.modeloDescripcion}" />
</p:selectOneMenu>

abril 17, 2014 | Registered Commenterrentonx

Cordial Saludo,

Espero poder ayudar. Algo similar me ocurrio y lo solucioné implementando una clase Converter que luego relacioné en el atributo converter del tag p:selectOneMenu.

abril 21, 2014 | Registered Commentercolenman

Hola tengo un problema con un SelectOneMenu, que cuando selecciono un valor de la lista en la pagina (HTML5, PrimFaces, NetBean), me muestra un error de "Converter"...

En mi Bean tengo definida una lista que la cargo con una transacción desde una bd de mysql.-

List<SelectItem> listaPaises; // con sus métodos getter y setter

y un objeto País donde almaceno el valor seleccionado de la lista

private Pais seleccionarPais; // con sus métodos getter y setter

En el constructor del bean creo la lista:

setListaPaises(new ArrayList<SelectItem>());

tengo un método que carga la listaPaises:

private void cargarListaPaises() {
List<Pais> lp = new ArrayList<>();

try {
PaisServiceImplementacion psi = PaisServiceImplementacion.getInstance();
lp = psi.getPais(); // Trae los datos de una base de datos en SQL

for (Pais pais : lp) {
getListaPaises().add(new SelectItem(new Long(pais.getIdPais()), pais.getNombrePais()));
}

} catch (PaisException ex) {
Logger.getLogger(ProvinciaBean.class.getName()).log(Level.SEVERE, null, ex);
}
}

En mi pagina jsf (HTML5) tendo definido el SelectOneMenu de la siguiente forma:

<p:selectOneMenu id="seleccionarPais" value="#{provinciaBean.seleccionarPais}" style="width:200px; font-size: 10px" >
<f:selectItem itemLabel="Seleccionar País" itemValue="" noSelectionOption="true"/>
<f:selectItems value="#{provinciaBean.listaPaises}" />
</p:selectOneMenu>

y dentro de la pagina tengo un Boton que invoca al método para grabar:

<p:commandButton id="infoButton" value="Alta" actionListener="#{provinciaBean.grabarProvincia()}" style="font-size: 14px; width: 100px;"/>

Mi problema es que cuando quiero grabar, no me llama al bean y me sale un mensaje de CONVERTER con los datos del país seleccionado de la lista.-

Alguien me puede dar una mano con la creacion de la clase COVERTER, no encontré ningún post que explique cual es su funcionalidad y como debería armarse e invocarse.-

Solo encontré ejemplos, los cuales ninguno me funciono.-

junio 9, 2016 | Registered Commenterbestia01