struts2中通配符与默认action冲突!

struts2配置片段<packagename="default"extends="struts-default"><default-action-refname="pa... struts2 配置片段
<package name="default" extends="struts-default">
<default-action-ref name="pageNotFound"></default-action-ref>
<action name="pageNotFound" class="com.TD.action.DefaultAction">
<result name="NoPageFound_jsp" >/NoPageFound.jsp</result>
</action>
</package>
<package name="login" namespace="/login" extends="default">

<action name="*" class="com.TD.action.LoginAction" method="{1}" >
<result name="success_jsp">/success.jsp</result>
</action>

</package>
当不使用通配符时(<action name="login" class="com.TD.action.LoginAction" method="login" >),访问命名空间login下的不存在的action(http://localhost:8080/TD/login/asd.action),能正常被默认action捕获处理。
但是使用了通配符后(<action name="*" class="com.TD.action.LoginAction" method="{1}" >),再访问不存在的action时,页面会报struts500,控制台会报(
严重: Exception occurred during processing request: com.TD.action.LoginAction.asd()
java.lang.NoSuchMethodException: com.TD.action.LoginAction.asd()
)。
求解。
展开
 我来答
叶飘风雨中
2013-12-09 · TA获得超过245个赞
知道答主
回答量:110
采纳率:0%
帮助的人:68.3万
展开全部
只有当匹配不到action时,才会调用默认的action;当使用 “ * ”通配符时,任何action是都能匹配到的,所以不会调用默认的action。既然 * 能匹配到action,当然就会调用对应的action中方法,若是找不到方法就会报java.lang.NoSuchMethodException异常
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式