当从用户的url中找不到action时候,我们希望有一个默认的友好界面返回给用户。下面来介绍一下在struts中的配置。
对于使用Struts2框架的应用而言,尽量不要让超链接直接链接到某个视图资源,这种方式会增加额外风险。推荐将所有请求都发送到Struts2框架,让该框架来处理用户请求,即使只是简单的超链接。对于简单的超链接的请求,可以通过定义name为*的Action(应该放最后)实现。
Struts2还允许在容器中定义一个默认的Action,当用户请求的URL在容器中找不到对应的Action时,系统将使用默认Action来处理用户请求。
配置默认Action通过<default-action-ref.../>元素完成,每个<default-action-ref.../>元素配置一个默认Action。
例子:
<package name="default_struts" extends="struts-default">
<!--配置一个默认Action,默认Action为simpleViewResultAction-->
<default-action-ref name="welcomeAction"/>
<!--name是必须的,它指向容器中另一个有效的Action,该Action将成为该容器中默认的Action -->
<!--通过action元素配置默认的Action -->
<action name="welcomeAction" class="mss.iorder.server.action.WelcomeAction">
<result>
/login/login.jsp
</result>
</action>
</package>