我需要在同一个方法调用中多次从动作B调用动作A.有没有办法实现它? 我可以给一些背景知识。我有一个产品特定的API,内部用struts实现,动作只能接受一个id和一个文件对象。但是,我需要为多个ID存储相同的文件。因此,我可以使用可以接收多个ID的自定义操作类,并在循环中调用产品附带的操作类。另外,我可以通过拦截器将表单数据传递给下一个操作类
答案 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>
您可以使用错误条件终止循环。尝试一下我会很高兴知道它的结果。