根据http://struts.apache.org/docs/s2-026.html:
使用top支持表达式将在即将推出的Struts中删除 版本2.5!
我们在许多JSP页面中使用 top 对象,如下所示(显示currencyTypes
列表并从struts消息中查找名称):
<s:select name = "selectedCurrencyType"
list = "currencyTypes"
listKey = "top"
listValue = "%{getText('acc.currencyType.'+top)}" />
它目前适用于struts 2.3.24.1
,但根据上述评论,上面的选择框是否适用于2.5
,或者我们不会再有顶级参考了?!
如果这是真的,请告诉我们应该如何解决以上问题?!
答案 0 :(得分:3)
添加了对top
对象的支持以支持内部操作,用户不应该使用它(是的,在docs中表示这是一个坏主意:()
无论如何,看起来我们必须准备一个迁移路径或继续支持top
对象。
答案 1 :(得分:1)
我在本文档中发现的内容以及我在示例Passing parameters to action through ModelDriven in Struts 2中使用的内容top
对象是CompaundRoot
的一个元素。这个类有一个{/ 3}}方法,在
使用
[0] ... [3]
之类的表达式.Struts 2将削减堆栈和 仍然返回CompoundRoot
个对象。要获得最高分 特定的堆叠切割,使用0.top
。
最后一个表达式是[xxx].top
的拼写错误,其中xxx
是CompoundRoot
对象的索引。此对象可以引用为[xxx]
。它是top
对象切割为xxx
索引。