HTTP Status 404 - There is no Action mapped for namespace [/] and action name [] associated with con

   今天帮别人调试了一个小问题,我自己做了测试得出来的结果

   错误信息显示:

 

前提保证web.xml文件没有问题,其次保证结果页面在WebContent 下(一般页面最好放在一个单独的文件夹下,这个文件夹以WebContentx为父节点)如下图

关于上边的问题:

首先检查一下<package>标签里边的 namespace=''/'' 的属性值里边是不是有空格

错误原因分析,这是说在映射文件中没有像上图红框里边最后部分的命名空间。

  问题解决:检查一下struts.xml中的<result>标签里边的内容。我下边给出了图片,并且用红框标出来了。一定要注意斜杠,因为namesapce已经规定访问路径是前边带反斜杠的,所以下边的结果页面前边一定要带斜杠。补充,在这个里边一定不要有空格

(下图红框里边的内容是要检查的部分,我给出的是正确的代码,我的结果页面就在page文件夹下)

 

 

补充更新:

 之前我觉得我把这个问题理解透了,实则不然,因为今天在做SSH的项目整合的时候,因为不小心的原因,又出现了两次的错误。

 下边我再对这个问题做一个补充。我以一个错误的例子开始帮助分析演示:

可以看错误上图的错误啊,出现这种错误,先看我绿色框里框起来的内容,错误信息报的是找不到这个名字的映射,框里的错误内容去哪里找呢?

看下图,它是和sp页面里的action提交的地址:下图的红色框里的内容就是上图绿色框的提示内容。报上边的错误,就去jsp页面里去找错误信息,查看拼写,以及检查是否不小心打了空格。

那么为什么错了呢,这就需要去对比struts.xml文件里边查看相应的映射了(如下图)正确的是下图红框里的内容和上图里边的应该一致,特别注意大小写,我就是因为大小写错的。因为我采取通配符的形式,所以只需要保证下划线前边的内容一致就可以了。

 

错误也演示完了,顺便再说说Struts2中这些配置以及执行流程吧,请求从jsp页面开始做第一次提交,

然后就去actionMap里边去找名字叫做上图框里边名字的映射了,actionMap就是由我们编写的struts.xml加载来的。然后看struts.xml文件。

红框里边的是jap要找的名字,因为框架的默认加载完得到的是.action后缀的名字,所以jsp文件里边的路径要带点action

绿色框里的内容是对应的action类的全路径,蓝色框里的是action里边的方法执行完了以后,返回的字符串,action执行完了以后,就来找结果页面,箭头线就是结果页面的路径。跳到结果页面,执行完成。

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值