Tengo un pequeño problema que espero me puedan ayudar a resolver.
Estoy realizando una pagina con PrimeFaces, en el ManagedBean tengo declarados cinco objetos de una clase y una lista de objetos de esa misma clase... es decir, tengo algo como esto:
Código Java:
Ver original
... @ManagedBean(name="personas") @ViewScoped public class Personas{ private MiClase objeto1; private MiClase objeto2; private MiClase objeto3; private MiClase objeto4; private MiClase objeto5; private List<MiClase> lista; public List<MiClase> getLista(){ return lista; } public void setList(List<MiClase> lista){ this.lista=lista; } ...
Mi clase, es una clase simple, con sólo varias propiedades y sus getter's y setter's:
Código Java:
Ver original
En el constructor de la tabla invoco un método para llenar el objeto lista, más o menos así:
Código Java:
Ver original
public Personas(){ setLista(LlenarLista()); } private List<MiClase> LlenarLista(){ List<MiClase> regresa=new ArrayList<MiClase>(); getObjeto1().setNombre("uno"); getObjeto2().setNombre("dos"); getObjeto3().setNombre("tres"); getObjeto4().setNombre("cuatro"); getObjeto5().setNombre("cinco"); regresar.add(getObjeto1()); regresar.add(getObjeto2()); regresar.add(getObjeto3()); regresar.add(getObjeto4()); regresar.add(getObjeto5()); return regresar; }
hasta aquí no hay ningún problema, todo funciona perfectamente... sin embargo, en la página xhtml donde estoy intentando recuperar el primer elemento de la lista y asignar la propiedad nombre a un inputtext... pero no sé como lograrlo... lo he intentado así:
Código Java:
Ver original
<p:inputText id="nomb_1" value="#{personas.lista.get(0).nombre}" maxlength="80" size="30"/>
sin embargo no me reconoce nada después del get(0). como si no tuviera alcance de las propiedades de la clase MiClase...
Cuando lo hago directamente con el objeto1, si accedo al valor:
Código Java:
Ver original
<p:inputText id="nomb_1" value="#{personas.objeto1.nombre}" maxlength="80" size="30"/>
Sin embargo no me gustaría acceder desde la lista, no desde los objetos por separado...
No veo qué estoy haciendo mal... espero que alguno de ustedes pueda echarme un cable y decirme cómo puedo acceder a un elemento en específico de la lista y a sus propiedades... ¿Qué estoy haciendo mal?... he revisado una y otra vez mi código y no veo dónde está el error, si al momento de llenar la lista o en la forma en que estoy tratando de acceder al elemento y a sus propiedades.
Desde ahora mi agradecimiento sincero.
Saludos
Leo.