java吧 关注:1,188,788贴子:12,599,421
  • 34回复贴,共1

自学struts2,404Wrong method was defined as an action method

只看楼主收藏回复

有点崩溃了,真的不知道哪里出错了,各位大神帮忙看下好



求求各位大哥了 凑您一点时间 帮忙看一下谢谢了!


IP属地:山东1楼2017-04-25 22:16回复
    顶一下!谢谢啦


    IP属地:山东2楼2017-04-25 22:17
    回复
      有可能我用的struts2版本太高了,我换成2.3的就行了,真不知道 什么原因搞的鬼,之前用的2.5


      IP属地:山东6楼2017-04-26 00:02
      收起回复
        项目里面是不是有这个JAR包 struts2-rest-plugin-2.5.10.1?
        把它删掉就可以了。


        IP属地:湖南8楼2017-06-29 17:24
        收起回复
          楼主你看看我回帖的时间......没错,我被这个问题折磨到了现在还没睡!你解决这个问题了吗?能不能告诉我是怎么解决的啊?


          9楼2017-07-27 04:38
          收起回复
            楼主,我来**了,最近太忙,忘记来汇***的近况了


            11楼2019-01-09 11:16
            回复
              不好意思,挖个坟,毕竟这问题导致广大学生不好睡觉。
              就是8楼说的,错误源头是 struts2-rest-plugin, 一个插件包。
              问题产生原因主要还是 这个包的重置规则导致的:
              1.导致action后缀无法被访问,只能访问name完全相同的action
              2.导致action绑定的方法execute(),被重定向为index,致使即使访问name同名链接也会失败
              主要说这两点,以下是解决方案
              *****************—— 添加constant标签在Struts.xml中的struts标签中 ——*****************
              <!-- 修正 rest-plugin 导致的错误 -->
              <!-- 修正方法访问 -->
              <constant name="struts.mapper.indexMethodName" value="execute"/>
              <!-- 修正后缀访问 -->
              <constant name="struts.action.extension" value="action,do,,xhtml,xml,json"/>
              *****************—— 添加constant标签在Struts.xml中的struts标签中 ——*****************
              有用的话,请顶以下此帖子,毕竟知识不过时,这个东西应该算不上坟贴。
              问题解决了,但是要了解为什么产生、怎么修正这种事情,详细可以继续学习:rest-plugin
              --商丘学院


              IP属地:河南14楼2020-05-10 00:13
              收起回复