我目前正在将wepapp从Struts迁移到Struts 2,但遇到了一些困难。
我有一些ActionRedirect
,没有为其提供任何额外的参数,并且我不知道如何迁移它,也许只是返回一个字符串是有效的?
例如,我有这个:
return new ActionRedirect(mapping.getFindforward("failed");
这样做有效率吗?
return "failed";
而且当我有参数时,如何迁移它?我从两天开始从事这一工作。
在Struts2中,如果要重定向到特定URL,则创建类型为"redirect"
的结果时,将进行重定向,或"redirectAction"
(如果要重定向到配置中的已知操作)。
这些结果可以在行动上配置,也可以像Struts1中的转发一样全局配置。
区别在于您不需要在mapping
中找到它,它将由框架完成。
如果返回"failed"
,框架将查找名为"failed"
的结果的配置,如果未能找到该结果,它将引发异常。
在struts.xml类中,您可以指定
<result type="redirect"
name="failed">redirect action name</result>
可以在动作课中使用
返回“故障”
或Action类中存在的任何常量