我需要将一些参数从动作A传递给动作B,参数在动作A中。动作B的URL将打印动作A的参数。因此流程为:
行动A
param1 = param1Val;
param2 = param2Val;
param3 = true;
param4 = 0;
在行动B中,网址为
ActionB?param1=param1Val¶m2=param2Val¶m3=true¶m4=0;
我尝试了类似this
的内容但它没有用。
我该怎么做才能让它开始工作?
答案 0 :(得分:0)
您的问题不是很明确,但如果您想使用redirectAction
将第一个操作中的某些参数传递给第二个操作,则必须在第一个操作(操作A)中创建这些参数配置您的第二个操作(操作B)您需要告诉S2您要将这些参数传递给操作B.
<action name="a" class="ClassA">
<!-- Redirect to another namespace -->
<result type="redirectAction">
<param name="actionName">B</param>
<param name="param1">${param1}</param>
<param name="param2">${param2}</param>
// any other parameters
</result>
</action>
这里的关键概念是使用${param1}
在配置中传递动态参数,这将查看值堆栈中名为param1
的参数,并将在运行时替换为其值。 / p>
确保您在操作A中将那些参数传递给操作B,并使用getter和setter,以便S2可以在运行时选择它们。
如果您想在配置中传递静态参数,那就不需要了解
<action name="a" class="ClassA">
<!-- Redirect to another namespace -->
<result type="redirectAction">
<param name="actionName">B</param>
<param name="param1">param1</param>
<param name="param2">param2</param>
// any other parameters
</result>
</action>
此处参数不是param1
而是${param1}