java吧 关注:1,264,252贴子:12,767,269
  • 13回复贴,共1

struts2关于配置默认action的问题

只看楼主收藏回复

遇到的问题,
在struts.xml中,
1、若在一个package中没有使用通配符,输入的url不存时在可以正常调用默认的action,
2、若使用通配符*_*则http://localhost:8080/struts2/http://localhost:8080/struts2/xyz等不存在指定的action name与其匹配就会调用*_*指定的action处理,怎么和*_*匹配上了?不应该调用默认的吗?
3、若后面的class属性使用了{1}匹配通配符上的内容,只要输入的url不能与action name匹配就会报错,也不调用默认的action
ps:package的namespace为"/"


1楼2014-08-24 18:44回复
    没人鸟我?


    2楼2014-08-24 19:15
    回复
      2025-06-14 08:09:19
      广告
      11级了还来水


      IP属地:广东3楼2014-08-25 15:07
      收起回复
        贴下配置文件吧


        IP属地:江苏4楼2014-08-25 16:08
        收起回复
          <package name="service" namespace="/" extends="struts-default">
          <default-action-ref name="index" />
          <action name="getwebeles2" class="cn.edu.ncwu.action.WebElesAction2"
          method="getWebEles">
          <result>/page/data.jsp</result>
          <result name="error">/page/error.jsp</result>
          </action>
          <!-- 使用默认的action时不能使用通配符吗? -->
          <<action name="*_*" class="cn.edu.ncwu.action.{1}Action" method="{2}">
          <result name="success"> /page/index.jsp </result> <result name="error"> /page/error.jsp
          </result> </action>
          <action name="index">
          <result>/page/default.jsp</result>
          </action>
          </package>


          6楼2014-08-25 18:18
          回复
            这个好像是struts2的bug,别用*_*好了


            IP属地:江苏7楼2014-08-25 19:19
            收起回复
              调试源码


              来自Android客户端9楼2014-08-26 18:27
              回复
                我想说,配置文件还是写全好,这种通配方式给别人看会晕的。


                IP属地:安徽来自Android客户端10楼2014-08-26 20:42
                回复
                  2025-06-14 08:03:19
                  广告
                  Class里面不要写通配符


                  IP属地:上海来自Android客户端11楼2014-08-26 22:28
                  回复
                    用一个通配符就好,用2个自己都会看晕。


                    来自iPhone客户端12楼2014-08-27 12:43
                    收起回复