java - Struts 2.0: añada dinámicamente el valor s: property
struts2 file (1)
Tal vez no sea la mejor manera de manejar ese caso, pero lo que está pidiendo podría hacerse de la siguiente manera:
<s:iterator value="animalsList" id="eachAnimal">
<s:property value="#attr[#eachAnimal].lifespan" />
</s:iterator>
Tengo algunos objetos del mismo tipo en la clase de acción ...
P.ej:
LivingThings fish = new LivingThings("FISH");
LivingThings dog = new LivingThings("DOG");
LivingThings lion = new LivingThings("LION");
El contenido de cada objeto será diferente.
También en la misma clase de acción tengo una lista con valores como el nombre de los objetos, es decir,
ArrayList<String> animalsList = new ArrayList<String>();
animalsList.add("fish");
animalsList.add("dog");
animalsList.add("lion");
=====
Ahora en la página jsp, necesito obtener dinámicamente los contenidos del objeto usando el contenido de animalsList
. es decir
<s:iterator value="animalsList" id="eachAnimal">
<s:property value="#eachAnimal.lifespan" />
</s:iterator>
Aquí lo único que trato de hacer es, en lugar de dar directamente el código como
<s:property value="fish.lifespan" />
<s:property value="dog.lifespan" />
<s:property value="lion.lifespan" />
De alguna manera, necesito anexar el nombre del objeto de la lista animalsList
. Es posible en struts 2.0. Estoy un poco confundido con el concepto OGNL. Intenté estos escenarios:
<s:iterator value="animalsList" id="eachAnimal">
<s:property value="#eachAnimal.lifespan" />
<s:property value="%{eachAnimal}.lifespan" />
<s:property value="%{#eachAnimal}.lifespan" />
</s:iterator>
¿Puede alguien darme sugerencias?