2012-07-11 21 views
5

¿Puedo usar s: Vivienda de etiqueta en s: texto etiqueta en Struts 2. La cuestión es que, tengo un Map en mi clase de Acción
Cómo usar <s:property> etiqueta en <s:text> en puntales 2

Map menuMap = new HashMap<String, String>(); 
menuMap.put("home()", "lbl.home.home"); 
menuMap.put("mymodule()", "lbl.home.mymodule"); 
menuMap.put("adduser()", "lbl.home.adduser"); 
menuMap.put("changepassword()", "lbl.home.chngPwd"); 

El mapa está teniendo clave/valores como String, valores realmente existe en mapa son las claves existe en application.properties archivo favor ver más abajo
Este es mi archivo Application.properties

lbl.home.home      = Home 
lbl.home.adduser     = Add User 
lbl.home.mymodule     = My Module 
lbl.home.chngPwd     = Change Password 

Ahora quiero repetir este mapa en mi JSP y desea obtener estos valores, desde el archivo de propiedades, haciendo pasar los valores de mapa como una clave en el archivo application.properties y mostrarlos como una etiqueta
soy capaz de obtener la clave, pero no es capaz de mostrar los valores del archivo de propiedades
Este es mi código JSP:

<s:iterator value="menuMap"> 
<tr> 
    <td> 
    <a href="#" onclick="<s:property value="key"/>" ><s:text name="<s:property value='value'/>"/></a> 
    </td> 
</tr> 
</s:iterator> 

Ahora el problema es que soy capaz de ver, si yo busco fuente de la página, una etiqueta y el nombre de la función que se llama en onclick() pero no abl e para ver el texto como etiqueta. me falta algo, por favor, ayúdenme para esto.
Gracias

Respuesta

9

En realidad es más simple que lo que estás intentando. Ya que la etiqueta es una etiqueta de texto Struts2, el atributo de nombre soporta expresiones OGNL, así que no hay necesidad de utilizar la etiqueta de propiedad para obtener el nombre, sólo OGNL:

<a href="#" onclick="<s:property value="key"/>" ><s:text name="%{value}"/></a> 
+0

Muchas gracias, yes..you están en lo cierto lo extrañé ... apreciado ... –

Cuestiones relacionadas