zoukankan      html  css  js  c++  java
  • struts2默认action设置了却访问不到

    1、错误原因

      我的package中共有两个action,第一个是默认action,用于访问的action不存在时候的出错处理,第二个是通配符方式写的action,name采用*_*形式的全通配符。配置好了,访问默认action时候会报错,但如果第二个action的class属性的包名中也包含通配符,如调整之后的代码中的{3},就可以正常访问默认action,不知道什么原因,估计是bug。

    2、出错时候的struts.xml的package部分代码

    <struts>
        <package name="default" namespace="/" extends="struts-default" strict-method-invocation="false">
            <!--默认action的使用:当用户要访问的action有误的时候自动跳转到该页面-->
            <default-action-ref name="index" />
            <action name="index">
                <result>/error.jsp</result>
            </action>
    
            <action name="*_*" method="{2}" class="com.icheny.action.{1}Action">
                <result>/result.jsp</result>
                <result name="add">/{2}.jsp</result>
                <result name="update">/{2}.jsp</result>
            </action>
        </package>
    </struts>

    3、第二个action的class的包名中增加一个通配符之后的struts.xmlpackage部分代码

    <package name="default" namespace="/" extends="struts-default" strict-method-invocation="false">
            <!--默认action的使用:当用户要访问的action有误的时候自动跳转到该页面-->
            <default-action-ref name="index" />
            <action name="index">
                <result>/error.jsp</result>
            </action>
           
            <action name="*_*_*" method="{2}" class="com.icheny.{3}.{1}Action">
                <result>/result.jsp</result>
                <result name="add">/{2}.jsp</result>
                <result name="update">/{2}.jsp</result>
            </action>
        </package>
  • 相关阅读:
    [CF1051F] The Shortest Statement
    [国家集训队] 墨墨的等式
    [CF558E] A Simple Task
    [洛谷P1349] 广义斐波那契数列
    [TJOI2009] 猜数字
    [洛谷P3403] 跳楼机
    学习力
    启动流程
    《鸟哥Linux》笔记——磁盘分区
    indexDB数据库
  • 原文地址:https://www.cnblogs.com/iCheny/p/10964282.html
Copyright © 2011-2022 走看看