1

我想通过访问 Struts 2 值堆栈中的属性来使titleKey属性参数化。所以,我想做这样的事情:

<display:table name="myListOfObjects" id="myId" requestURI="/myAction.action" pagesize="10">
    <display:column property="myProperty" titleKey="my.internationalyzed.i18n.key.myProperty.<s:property value='anotherObject.aProperty'/>" />
    ...

如您所见,我想在我的操作中访问一个属性到一个暴露的对象中

<s:property value='anotherObject.aProperty'/>

并将值放入titleKey元素中。

如果我这样做,结果是一个表列,其中一个未解析的my.internationalyzed.i18n.key.myProperty字符串作为标题。换句话说,<s:property>标签不会在<display:column>元素内部进行解释。

但是如果我把

<s:property value='anotherObject.aProperty'/>

<display:table>元素之外它被正确解析并且结果值显示在页面上,因此该属性被正确地公开和增值。您知道如何从<display:column>元素内部访问在操作中公开的属性吗?

4

1 回答 1

0

您可以在非 struts 标记中使用 JSP EL 表达式,因此在查看请求范围时,表达式将要求请求公开值堆栈。例如

<display:column property="myProperty" titleKey="my.internationalyzed.i18n.key.myProperty.${anotherObject.aProperty}" />
于 2014-03-21T19:19:45.750 回答