There is no Action mapped for namespace / and action namen异常解决方法

本来想用DMI的方式调用,如 registerAction!add,就能调用registerAction里面的add方法,但说来愚笨,这一个小问题说得很明白,就是找不到相就的Action或是相应的方法,但让我困扰一好几个小时,我的struts.xml中的action配置如下:

<action name="registerAction" class="registerAction">
<result name="success">/success.jsp</result>
<result name="fail">/fail.jsp</result>
</action>


这个不会有什么问题的,这里的 class="registerAction"是说我的Action是由Spring来管理的,如果不是这样话,把Class配置成相对应的类的就可以了。
但是运行会出现异常,说是找不到相应的Action或是方法,小改下,我指定方法还不成吗?


<action name="*" class="registerAction" method="{1}">
<result name="success">/success.jsp</result>
<result name="fail">/fail.jsp</result>
</action>

再访问呢,没有问题,好生怪异了,现在问题应该就在struts.xml中的配置了,在一个不经意的角落里看到要一句:

[color=red]<constant name="struts.enable.DynamicMethodInvocation" value="false" />[/color]

郁闷,原来Copy配置的时候,把这句没有注意,显式的关闭了MDI,所以呢,把这句给去了,改去原来的配置,再访问,好了,世界清静了!

后记:这种问题通常是Struts.xml的配置问题,检查这样的问题,首先看是否关了DMI,二来,看下Action里在配置会不会有相同名称的,可能会冲突。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值