在Struts 2.5中使用’top’对象
根据http://struts.apache.org/docs/s2-026.html :
在即将推出的Struts 2.5版中,将删除对使用top的表达式的支持!
我们在下面的许多JSP页面中使用了top对象(它显示了currencyTypes
列表并从struts消息中查找名称):
它目前适用于struts 2.3.24.1
但是根据上面的评论,上面的选择框将适用于2.5
,或者我们将不再有顶级参考?!
如果这是真的,请告诉我们我们应该如何解决以上问题?!
添加了对top
对象的支持以支持内部操作,用户不应该使用它(是的,在docs中表示这是一个坏主意:()
无论如何,看起来我们必须准备一个迁移路径或保持对top
对象的支持。
我在本文档中发现的以及我在示例中使用的内容通过Struts 2中的ModelDriven将参数传递给操作 , top
对象是CompaundRoot
一个元素。 这个类有一个cutStack()
方法,在中提到
使用像
[0] ... [3]
等表达式.S括栏2将剪切堆栈并仍然返回一个CompoundRoot
对象。 要获得特定堆栈切割的顶部,请使用0.top
。
最后一个表达式是[xxx].top
的拼写错误,其中xxx
是CompoundRoot
对象的索引。 此对象可以引用为[xxx]
。 它是切割到xxx
索引的top
对象。