Foros del Web » Programación para mayores de 30 ;) » Java »

[struts2] asociar un <s:property con un value de url

Estas en el tema de [struts2] asociar un <s:property con un value de url en el foro de Java en Foros del Web. Buenas!! Tengo una duda que mas de implementación es de sintaxis. Tengo una página jsp en la que he declarado un iterator<String> el cual cada ...
  #1 (permalink)  
Antiguo 29/03/2010, 10:22
 
Fecha de Ingreso: febrero-2009
Mensajes: 30
Antigüedad: 15 años, 2 meses
Puntos: 0
[struts2] asociar un <s:property con un value de url

Buenas!!

Tengo una duda que mas de implementación es de sintaxis.

Tengo una página jsp en la que he declarado un iterator<String> el cual cada elemento debería servirme para pasarselo luego a otro elemento en su parámetro value. Mi duda es ¿Como debo escribir esa sentencia?

Por ejemplo si hago:

Código:
<s:iterator value="lista">
        <s:property/>
<s/iterator>

Y la lista esta compuesta por elem1, elem2, y elem3 cuando ejecuto me imprime

Código:
elem1 elem2 elem3
Es decir, sin ningún problema.

Yo ahora quiero que elem1, elem2 y elem3 me sirvan para generar una serie de url's cuyo valor de un parametro serán los del iterator.

He pensado poner lo siguiente:


Código:
<s:iterator value="generaMenu">

<s:url id="menu" action="procesaMenu">
  	<s:param name="elemMenu" value="<s:property/>"></s:param></s:url> 

<a href="<s:property value="%{menu}"/>"> <s:property/> </a> 

</s:iterator>
El problema es que entonces no me imprime nada y cuando intento modificar la sentencia de alguna forma aparecen errores de sintaxis cuando intento ejecutar

Si alguien pudiese ayudarme me salvaria la vida :D
  #2 (permalink)  
Antiguo 29/03/2010, 10:54
 
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.

Etiquetas: asociar, struts, url
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:22.