global-results

有很多时候一个<result>可供很多<action>使用,这时可以使用<global-results>标签来定义全局的<result>。

定义在<action>元素里面的<result>我们可以称之为局部<result>,除此之外我们还可以定义全局的<result>,这些全局的<result>会被多个<action>所共享。框架会首先寻找嵌套在<action>元素中的<result>,如果没有匹配的就去全局<result>中寻找。

      执行顺序:当一个Action返回的String没有相应的<result>与之对应,Struts2就会查找全局的<result>。

      <global-results>

              <result name="error">/Error.jsp</result>   <!--   Action.ERROR -->

    <result name="invalid.token">/Error.jsp</result>

    <result name="login" type="redirectAction">Logon!input</result>

  </global-results>

其中type的种类有如下:

 

<result-types>             <result-type name="chain" class="com.opensymphony.xwork2.ActionChainResult"/>             <result-type name="dispatcher" class="org.apache.struts2.dispatcher.ServletDispatcherResult" default="true"/>             <result-type name="freemarker" class="org.apache.struts2.views.freemarker.FreemarkerResult"/>             <result-type name="httpheader" class="org.apache.struts2.dispatcher.HttpHeaderResult"/>             <result-type name="redirect" class="org.apache.struts2.dispatcher.ServletRedirectResult"/>             <result-type name="redirectAction" class="org.apache.struts2.dispatcher.ServletActionRedirectResult"/>             <result-type name="stream" class="org.apache.struts2.dispatcher.StreamResult"/>             <result-type name="velocity" class="org.apache.struts2.dispatcher.VelocityResult"/>             <result-type name="xslt" class="org.apache.struts2.views.xslt.XSLTResult"/>             <result-type name="plainText" class="org.apache.struts2.dispatcher.PlainTextResult" />             <!-- Deprecated name form scheduled for removal in Struts 2.1.0. The camelCase versions are preferred. See ww-1707 -->             <result-type name="redirect-action" class="org.apache.struts2.dispatcher.ServletActionRedirectResult"/>             <result-type name="plaintext" class="org.apache.struts2.dispatcher.PlainTextResult" />         </result-types>

你可能感兴趣的:(global-results)