默认action配置
注意需要注释掉使用类名通配符的action配置,否则会去匹配类,报错500
<default-action-ref name="index"> </default-action-ref> <action name="index"> <result>/error.jsp</result> </action>
默认Action的配置
用于配置找不到action时的错误页面设置
default 默认action
struts.xml里标签package里元素必须按照一定的顺序排列:
result-types
interceptors
default-interceptor-ref
default-action-ref
default-class-ref
global-results
global-exception-mappings
action*(就是所有的action放到最后)
<action name="*_*" method="{2}" class="action.{1}Action">
1、用"*_*"作为通配符,不管输入什么URL都不会调用默认action,会报错;
2、用"helloworld_*"作为通配符,输入aa.action会调用默认action,但输入helloworld_aa.action不会调用默认action
通配符会覆盖掉默认action,所以不能有【*_*】这样子的action,要改成【log_*_*】这类型的命名,否则,【*_*】里面的第一个*就包括了所有的字符,直接进入了这个action进行处理,无法进入默认的action了。
@Struts2---默认Action
<default-action-ref name="index"></default-action-ref> <action name="index"> <result>/error.jsp</result> </action>
【找不到默认action的原因和解决方法】 <default-action-ref name="index"></default-action-ref><br> <br> <action name="index"><br> <result>/error.jsp</result><br> </action> <br> <br> <action name="log_*" method="{1}" class="com.wayne.action.LoginAction"><br> <result name="login">/login.jsp</result><br> <result name="logout">/logout.jsp</result><br> </action><br> <br> 通配符会覆盖掉默认action,所以不能有【*_*】这样子的action,要改成【log_*_*】这类型的命名,否则,【*_*】里面的第一个*就包括了所有的字符,直接进入了这个action进行处理,无法进入默认的action了。
1、用"*_*"作为通配符,不管输入什么URL都不会调用默认action;
2、用"helloworld_*"作为通配符,输入aa.action会调用默认action,但输入helloworld_aa.action不会调用默认action
默认action
<default-action-ref name="error"></default-action-ref>
默认action:为了提升体验度和网站的正常运行配置默认action。当遇到突发状况时均有默认action来撑场面。
<default-action-ref name="name"></default-action-ref>
在名为name的action中配置后台action和前端展示