从displayTag列元素内部访问Struts2值堆栈

问题描述 投票:0回答: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>
元素内部访问操作中公开的属性吗?

jsp struts2 displaytag valuestack
1个回答
0
投票

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

<display:column property="myProperty" titleKey="my.internationalyzed.i18n.key.myProperty.${anotherObject.aProperty}" />
© www.soinside.com 2019 - 2024. All rights reserved.