Struts 2 - 当第二个操作与表单一起使用时,操作之间传递的参数会丢失

问题描述 投票:0回答:1

我有两个动作类,它们通过

ModelDriven
接口使用相同的模型。 每个动作类都与形式相关。 我需要在两个操作中将值存储到同一模型。

从第一个操作类(验证后),我通过以下方式将模型驱动模型传递到第二个类:

@Result(name = "success", location = "action2", type = "chain")

在第二个操作类中,我显示了已在第一个操作中存储到模型中的值。

这工作正常,但是当我在第二个操作中执行表单提交时,存储的值 从第一次行动开始就迷失了。

因此,第一个操作的数据仅存储用于第一次调用第二个操作。

有什么解决方案可以实现这一目标吗?

java struts2 parameter-passing chain model-driven
1个回答
0
投票

将您的数据放入会话中或使用参数,其结果如herethere所述。

可以使用 params 属性将参数传递给结果。该属性的值是一个字符串数组,其中包含偶数个元素,格式为 {"key0", "value0, "key1", "value1" ... "keyN", "valueN"}。例如:

 @Action(value="/different/url",
    results={@Result(name="success", type="httpheader", params={"status", "500", "errorMessage", "Internal Error"})}
  )
© www.soinside.com 2019 - 2024. All rights reserved.