【发布时间】:2013-04-17 01:15:15
【问题描述】:
我有一个 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;
}
所以上面的方法NO MATTER WHAT总是返回“成功”的结果。
但在 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>
【问题讨论】: