我正在迭代List<SomeObject>
,但我只想根据另一个SomeObject
中指定的属性打印出List
的某些属性。到目前为止,我已经得到了它。我不确定如何使用List
中的项目作为我要打印的SomeObject
的属性。
<s:iterator value="theList" var="listItem" status="theListCount">
<s:iterator value="listOfAttributes" var="attr" status="attrListCount">
Attribute=<s:property value="#attr"/> Value=<s:property value='#listItem.[%{#attr}]'/>
</s:iterator>
</s:iterator>
答案 0 :(得分:1)
无需在表达式
部分强制使用OGNL<s:iterator value="theList" var="listItem" status="theListCount">
<s:iterator value="listOfAttributes" var="atr" status="attrListCount">
Attribute=<s:property value="#atr"/> Value=<s:property value="#listItem[#atr]"/>
</s:iterator>
</s:iterator>
答案 1 :(得分:0)
首先#attr
是保留关键字,因此不要将其用作变量值。并使用[]
表示法来引用对象的属性。
<s:iterator value="theList" var="listItem" status="theListCount">
<s:iterator value="listOfAttributes" var="atrbt" status="attrListCount">
Attribute=<s:property value="#atrbt"/> Value=<s:property value="#listItem[#atrbt]"/>
</s:iterator>
</s:iterator>