关于struts2 的 There is no Action mapped for action错误

来源:互联网 发布:淘宝违规处罚节点 编辑:程序博客网 时间:2024/05/16 09:44

  使用struts1和struts2进行开发已经好长时间了,不能说是深入研究,可以说是应对自如吧!但是,今天,很受打击,原以为很简单的,却把我搞了好一个多小时,在这里,就给大家提个醒。

   今天的错误是为了我们的项目和别的公司项目进行网络接口对接,开始我想到使用webservice ,这是我的老生了,但是觉得另起炉灶不是好事,还是在当前的基础增加是比较好的(我们项目使用struts2)。浴室就根据自己的想法,在网络提供一个xml接口,让合作公司共拓解析xml读取数据就可以了。

  居于这个想法,我开始我的曾是,使用url直接得到xml文件(以前一直使用的是ajax获取xml文件),从理论上来说,这些都是一直,到那时,没有尝试过,什么都不敢说,所以就开始自己的验证。

  显示搭建一个struts2测试平台,搭建平台已经是我轻车熟路的了,导入,配置web.xml,在src下写struts.xml文件,书写工程的测试类,部署工程;一切都很顺其自然,启动tomcat,ok,正常启动,没有报任何的错误。

   通过上面的操作,一切都很顺利,于是就在地址栏输入访问地址 http//:localhost:8080/工程名/命名空间/action的名字.action  ;页面提示一个很熟悉的错误:There is no Action mapped for action,这不是访问的时候,找不多对应的action吗?于是就检查自己的写的action名字对不对,访问的地址对不对,命名空间对不对,通过一番的检测和实验,都是对的啊,到底怎么回事?难道struts2的访问方式改了?我真不敢相信自己了,就到网上搜索了半天,说的和我写的还是一样的,没有什么差别的,所有的东西我都进行了一次复制,把他们说是对的都进行了,但是错误依旧在,我惊呆了,难道是昨天晚上酒喝多了?想想也不多啊,就一瓶啤酒,只不过脑子有点痛罢了,但是现在是很清醒的啊!

   弄很久,看了官方网站,再看看各朋友个的计策,都无济于事,错误依然存在。

  最后,终于找到了,是我在命名空间中少些了一个“/”namespace=“abc”正确的是namespace=“/abc”

  把它放在这里,时时提醒自己。