2010-10-20 31 views
1

Je suis en train d'utiliser la récupération d'une propriété à partir d'un objet Utilisateur dans la session. L'expression suivante fonctionne correctement:Comment utiliser les constantes Java en tant que paramètre dans une balise OGNL Struts 2

<s:property value="#session.ATRB_SESSION_USER.getAttribute('ATTRIBUTE_USER_NAME')"/> 

mais ces chaînes ATRB_SESSION_USER et ATTRIBUTE_USER_NAME sont constatns définis dans une classe. Comment puis-je utiliser la constante au lieu de la chaîne? Je voudrais faire quelque chose comme ceci

<s:property value="#session.<%=Constants.ATRB_SESSION_USER%>.getAttribute(<%=Constants.ATTRIBUTE_USER_NAME%>)"/> 

Quelqu'un sait comment je peux faire cela? TIA

Répondre

1

Vous pouvez utiliser la syntaxe OGNL @ class @ field pour faire référence à des champs statiques. Le nom de la classe dans @class doit être entièrement qualifié.

+0

Donc quelque chose comme ça devrait fonctionner?

+0

oui, cela devrait fonctionner. –