【问题标题】:Struts 2 - Accessing different properties on the ValueStack sharing the same nameStruts 2 - 访问 ValueStack 上共享相同名称的不同属性
【发布时间】:2010-05-30 14:28:23
【问题描述】:

Struts 2 将在视图渲染期间首先针对 ValueStack 中的顶部对象解析所有属性名称。但是如何访问堆栈中较低对象的同名属性呢?

例子:

假设我有一个名为 MyAction 的 Action 类,它有一个 logDate 属性。在调用此操作后呈现的视图中,有这样的:

迭代器>

现在想象一个 User 对象也有一个 logDate 属性。在迭代期间,Struts 2 将始终将当前用户对象推到 ValueStack 的顶部,从而有效地解析所有属性名称。但是,如果我想从操作中访问 logDate 怎么办?这样做的正确方法是什么?

【问题讨论】:

    标签: struts2 ognl valuestack


    【解决方案1】:

    您可以使用索引来查看子堆栈。例如: [0].logDate 将在堆栈的停止处开始搜索,并在用户对象上找到 logDate。 [1].logDate 将开始更深一层的搜索并在 Action 类上找到 logDate。这个OGNL page(参见访问静态属性标题正上方的部分)有更多细节,这里是另一个explanation

    【讨论】:

    • 不错!非常感谢您的快速回答:)有没有办法将问题标记为已回答?
    • 不客气 - 很高兴它有帮助。答案旁边应该有一个空心复选标记。单击它会将其变为绿色以接受它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-31
    • 1970-01-01
    • 1970-01-01
    • 2011-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多