Java - Elemento select anidado con Struts

 
Vista:

Elemento select anidado con Struts

Publicado por Juan Pablo (15 intervenciones) el 16/01/2008 17:44:11
Buenas!

Deseo mostrar en un formulario una serie de opciones con un select, las cuales están en
una base de datos. Estoy usando Struts y deseo hacerlo con <html:select>. He visto ejemplos y explicaciones en foros bastante buenas, pero no me son suficientes porque mis datos están anidados y no consigo mostrar lo que yo deseo.

Tengo una clase llamada 'UsuarioContainer' que tiene un campo de tipo 'CarteraGlobal'. Ese contenedor con los datos del usuario lo guardo en la sesión con la sentencia

session.setAttribute("UsuarioContainer", usuarioContainer);

Así ya tengo los datos en la sesión, y como decía, el objeto 'UsuarioContainer' tiene un
campo de tipo 'CarteraGlobal'. Esta clase posee un campo de tipo 'List' llamado "carteras"

private List carteras;

Y esta collection posee los datos de las carteras de un usuario, almacenando objetos de
tipo 'CarteraVO'.

Yo lo que quiero es mostrar con el select los nombres de esas 'CarteraVO' que posee el
usuario en cuestión, que se corresponden con la propiedad 'idCartera' de la clase 'CarteraVO'

No sé si ha quedado claro, pero no consigo lo que pretendo. Alguien puede ayudarme? Si no entendeis algo de lo explicado preguntadme, ok?

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Elemento select anidado con Struts

Publicado por mario (58 intervenciones) el 16/01/2008 20:40:26
Sip

Lo q tienes q hacer es que programes su evento onchange vas al Action por los datos dependiendo de est combo. y los colocas en una lista q pertence al ActionForm

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Elemento select anidado con Struts

Publicado por Juan Pablo (15 intervenciones) el 17/01/2008 17:18:17
Hola!

No entiendo muy bien lo que me quieres decir, y tampoco es la idea que tenía pensada hacer. Creo que es más fácil que eso.

Por ponerte un ejemplo, un select normal sería así:

<html:select property="color">
<html:option value="verde1">Verde Claro</html:option>
<html:option value="verde2">Verde Aceituna</html:option>
</html:select>

Como esas opciones de colores son distintas para cada usuario, necesito sacarlas de una base de datos y mostrar las adecuadas. La forma apropiada es la siguiente:

* el Action correspondiente obtiene esos valores y los guarda en una Collection, la cual guardo, en mi caso, en la sesión. Con eso no tengo problema
* en el JSP, en lugar de <html:option>, debería usar <html:options> de esta manera:

<html:options collection="colores" property="codigo" labelProperty="nombre" />

donde se supone que tengo una colección de objetos con una propiedad que se llama codigo (que sería el verde1, verde2...) y otra propiedad que se llama nombre (que sería el Verde Claro, Verde Aceituna...).

Mi problema está en que mi colección (mi lista) no está en un primer nivel, sino anidada en otras clases como te expliqué en mi anterior mail, y con
<html:options> no puedo acceder. Creo que necesito usar las etiquetas <nested>, quizá <nested:options> o algo por el estilo, pero no sé cómo, ni qué atributos usar, ni nada.

¿Puedes ayudarme?

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar