在表单提交上多次调用相同的操作

时间:2012-12-07 15:38:57

标签: model-view-controller struts2

我需要在同一个方法调用中多次从动作B调用动作A.有没有办法实现它? 我可以给一些背景知识。我有一个产品特定的API,内部用struts实现,动作只能接受一个id和一个文件对象。但是,我需要为多个ID存储相同的文件。因此,我可以使用可以接收多个ID的自定义操作类,并在循环中调用产品附带的操作类。另外,我可以通过拦截器将表单数据传递给下一个操作类

2 个答案:

答案 0 :(得分:1)

您可以通过不同的操作名称多次在表单提交上调用相同的Action类,例如相同UserAction类上的deleteUser,editUser,addUser。

希望,它会实现你的目的。

答案 1 :(得分:0)

我没有测试过,可能没时间试试。但我认为你可以尝试这种方式多次调用一个动作。在struts.xml中,使用成功重定向到相同的操作名称。例如

<action name="onSubmit" class="com.example.SubmitAction" method="upload">
<result name="success" type="redirect">onSubmit</result>
<result name="error">Success.jsp</result>
</action>

OR

<action name="onSubmit" class="com.example.SubmitAction" method="upload">
<result name="success" type="redirect">onSubmitRedirect</result>
<result name="error">Success.jsp</result>
</action>



<action name="onSubmitRedirect">
<result name="success" type="redirect">onSubmit</result>
</action>

您可以使用错误条件终止循环。尝试一下我会很高兴知道它的结果。