Struts2 中action之间的跳转

原文 http://zhou568xiao.iteye.com/blog/253428
例如从你的login.action到register.action  有两种实现方式
1. 设置type="redirect"
<package  name="struts" extends="struts-default">  
          <action name="login" class="com.aihua.example.LoginAction">  
              <result name="success" type="redirect">register.action </result>  
              <result name="error">/index.jsp  </result>  
          </action> 
      </package> 

2.设置 type="chain"
<package  name="struts" extends="struts-default">  
          <action name="login" class="com.aihua.example.LoginAction">  
              <result name="success" type="chain" >action 名称 </result>  
              <result name="error">/index.jsp </result>  
          </action>   
</package>
 
当type为chain 时,说明是action链,运行完第一个action java文件接着会运行第二个action JAVA 文件,相当于forward(客户端的url不会改变).当type为redirect时,说明会跳转到第二个action的url (客户端的url会改变)

不同命名空间的 action跳转

<result name="SUCCESS" type="redirectAction">
    <param name="namespace">/renew</param> 
    <param name="actionName">renewToList</param>
</result>


Struts.xml

<constant name="struts.action.extension" value="do" />
<constant name="struts.enable.DynamicMethodInvocation" value="false" />

struts.action.extension 这个里面拦截指定的扩展名
struts.enable.DynamicMethodInvocation = true,-动态方法调用,为true时,就可以在struts.xml配置“*”的通配符,来调用action里的方法

你可能感兴趣的:(struts)