Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/03/2010, 10:54
guetalon
 
Fecha de Ingreso: febrero-2009
Mensajes: 30
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: [struts2] asociar un <s:property con un value de url

Bueno, jeje a base de prueba y error lo he conseguido. Lo pongo porque lo he logrado por pura casualidad y en internet no he encontrado ninguna información clara al respecto. Espero que a alguien que se encuentre en mi situación pueda servirle de ayuda y le ahorre algún tiempo.

Código:
<s:iterator value="generaMenu">
	
	
	<s:url id="menu" action="procesaMenu">
  			 <s:param name="tipo"><s:property/></s:param>
	</s:url> 
	<a href="<s:property value="%{menu}"/>"> <s:property/> </a> 
	
	<br>
	
</s:iterator>
Como podeis ver en <s:param no hace falta poner un campo value sino que silo ponemos entre las etiquetas de apertura y cierre hace el mismo papel que si pusieramos value="loQueSea". Ahí estaba mi error en el momento en el que se leía el value del param

<s:property/> me permite acceder al elemento actual de la iteracion si esta se hace sobre una lista de tipos básicos (En este caso era una lista simple de String).

Si se hiciera sobre una lista de objetos pondria <s:property value="atributoDelObjeto"/> (Aunque con el caso especial del param por el que preguntaba no lo he probado. Lo había probado poniéndolo de forma independiente)


Me he explayado un poco mas porque veo que se hacen muchas preguntas sobre esta tecnología en el foro que no tienen respuestas por lo nueva que es y la poca gente que parece que se maneja aún con ella.