我有一个 struts2 操作,它使用addActionError
如下所示设置了一些错误
public String del() {
if (new OrdersService().get(idorder) == null) {
addActionError("Order not found");
} else {
new OrdersService().remove(idorder);
addActionMessage("Order deleted successfully");
}
return SUCCESS;
}
所以上述方法无所谓总是返回“成功”结果。
但是在 struts.xml 中,我使用了重定向结果类型来重定向到另一个操作,并且该操作从未执行,而是我得到了结果“输入”,我无法理解出了什么问题?
是不是类似于如果一个动作设置了一个actionError
,则无法执行另一个动作,并且会立即抛出“输入”结果。但这没有意义(至少对我来说)!
[编辑] 包括 struts.xml 的某些部分
<action name="/order/{idorder:[0-9]+}/del" class="actions.OrderAction" method="del">
<interceptor-ref name="store">
<param name="operationMode">AUTOMATIC</param>
</interceptor-ref>
<interceptor-ref name="defaultStack" />
<result name="success" type="redirect">orders</result>
</action>