[英]how to implement global redirect page in struts2
我们在Web应用程序中使用Struts 2。 已经定义了许多动作映射,我想实现一个功能,其中任何以/ buy开头且未映射到任何现有动作映射(例如/ buy / new或buy / old)的Urls都应重定向到Buy / index动作。 例如,如果有人尝试去/ buy / bla1或/ buy / bla2或buy / bla1 / bla2 / bla3应该去购买/索引。
在/buy
包中定义以下操作:
<action name="*">
<result type="redirectAction">index</result>
</action>
另外,您也可以使用:
<default-action-ref name="index" />
但是,那么您将不会获得任何重定向。 而是索引页面将显示在不存在的地址下。
您还需要在struts.properties中设置以下参数:
struts.action.extension = action,,
您可以向参数添加其他扩展名,但是据我所知,所有扩展名都没有通配符。 空字符串包含/ buy / bla之类的目录,但/buy/bla.x不会被涵盖,并且会产生404错误,除非您将x添加到扩展列表中。
如果这还不够好,您最好通过使用Web服务器中的重定向规则来解决此问题。
您可以使用默认操作引用,并为其提供JSP成功路径。
如果收到任何不匹配的动作,它将调用给定的动作并将其转发到结果JSP页面。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.