zoukankan      html  css  js  c++  java
  • SSH出错之-- No result defined for action

     No result defined for action

    ----

     一、错误原因

    这个错误可能是由很多原因引起的

    1)可能是输入的变量为空值

    输入的变量为空值,action会转到input里去,input又没有。错误。

    2)配置文件写错了

    二、输入的变量为空值

    三、配置文件写错

    我看了半天,我的action里面明明就有result的定义,但是无论我怎么改,运行到execute中return的时候,它死活找不到页面。

    错误的:(按理说省略namespace不应该是错的,但是事实如此,我也无法啊。)

        <package name="money"  extends="struts-default">
    
            <action name="transfer"     class="com.meetcomet.action.transferAction">
                <result name="input">/index.jsp</result>
                <result name="success">/welcome.jsp</result>
                <result name="error">/fail.jsp</result>
            </action>
    </package>

    正确的:

    就是命名空间的问题。

        <package name="money" namespace="/" extends="struts-default">
    
            <action name="transfer"     class="com.meetcomet.action.transferAction">
                <result name="input">/index.jsp</result>
                <result name="success">/welcome.jsp</result>
                <result name="error">/fail.jsp</result>
            </action>
    </package>

     如果不写命名空间,默认的命名空间为"".

    引用一段话:

    默认的命名空间“ namespace="" ”, 根命名空间  namespace="/" ”。   

        <package name="test" extends="struts-default"> ,如果未指定命名空间,则命名空间默认为  namespace="" ”。

        默认命名空间里的Action可以处理任何命名空间下的Action请求。例如,如果存在URL为/barspace/bar.action的请求,并且/barspace的命名空间下没有名为bar的Action,则默认命名空间下名为bar的Action也会处理用户请求。但根命名空间下的Action只处理根命名空间下的Action的请求,这是根命名空间和默认命名空间的区别。     命名空间只有一个级别。如果请求的URL是/bookservice/search/get.action,系统将先在/bookservice/search的命名空间下查找名为get的Action,如果在该命名空间内找到名为get的Action,则由该Action处理用户的请求;如果未找到,系统将直接进入默认的命名空间中查找名为get的Action,而不会在/bookservice的命名空间下查找名为get的Action 

    这段话是正确的。我一开始没有弄清楚name 和namespace的区别,访问的时候用的URL是"/money/transfer",没有设置namesapce,照常能访问。但是,找不到result的页面。如果设置了namespace的空间为namespace=“/money",则可用”/money/transfer"来访问。

    name和namespace的区别

    name 用来指定包的名称。包要名称干什么呢?我觉得好处是能让包能继承。比如<package name="test" extends="struts-default"> 这个就是继承了struts-default这个包。如果需要,可以继承test这个包。

       

  • 相关阅读:
    LeetCode Subsets II
    LeetCode Rotate Image
    LeetCode Palidrome Number
    LeetCode Generate Parentheses
    LeetCode Maximum Subarray
    LeetCode Set Matrix Zeroes
    LeetCode Remove Nth Node From End of List
    Linux Loop设备 使用
    Linux 文件系统大小调整
    LeetCode N-Queens II
  • 原文地址:https://www.cnblogs.com/meetcomet/p/3419250.html
Copyright © 2011-2022 走看看