<result name="next" type="chain">next</result>
上面的<result name="next" type="chain">中的type就是处理结果类型,处理结果类型有以下3种是最常用的:
dispatcher: 通常用来处理jsp,是默认的类型,就是说如果你一个result不指定类型的话,它默认就是这种类型.
chain: 用来处理Action链,即移交下个Action继续处理
user_update call update() success user_index.jsp
admin_delete call delete() success admin_index.jsp
*_* call {2} {1}_index.jsp
action1 uname --->action2 username
上面的<result name="next" type="chain">中的type就是处理结果类型,处理结果类型有以下3种是最常用的:
dispatcher: 通常用来处理jsp,是默认的类型,就是说如果你一个result不指定类型的话,它默认就是这种类型.
chain: 用来处理Action链,即移交下个Action继续处理
redirect: 重新定向到一个URL
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="results" extends="struts-default" namespace="/">
<action name="test" class="itany.action.MethodExecuteAction"
method="login" />
<action name="test1" class="itany.action.Test1Action">
<result type="redirectAction">test2</result>
</action>
<action name="test2" class="itany.action.Test2Action">
</action>
<!--
tom tom/index.jsp
frank frank/index.jsp
-->
<!-- 动态结果集 -->
<action name="dynaresult" class="itany.action.DynaResultAction">
<result>${user.uname}/index.jsp</result>
</action>
<!-- 通配符结果集 -->
<action name="*_*" method="{2}" class="itany.action.WildcastAction">
<result>{1}_index.jsp</result>
</action>
<!-- localhost:8081/Struts2-Results/action1?uname=Sophia&uage=20 -->
<action name="action1" class="itany.action.Action1">
<result type="redirectAction">
<param name="actionName">action2</param>
<param name="namespace">/</param>
<param name="username">${uname}</param>
<param name="userage">${uage}</param>
</result>
</action>
<!-- localhost:8081/Struts2-Results/action1?uname=Sophia&uage=20 -->
<action name="action2" class="itany.action.Action2">
<result type="redirect">
<!--
<param name="location">hello.jsp</param>
<param name="namespace">/</param>
<param name="name">${username}</param>
<param name="age">${userage}</param>
-->
<param name="location">/hello.jsp?name=${username}&age=${userage}</param>
</result>
</action>
</package>
</struts>
动态结果集:
user_login call login() success user_index.jsp
admin_login call login() success admin_index.jspuser_update call update() success user_index.jsp
admin_delete call delete() success admin_index.jsp
*_* call {2} {1}_index.jsp
action1 uname --->action2 username