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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM