DMI方式配置xml有兩種形式: web
1.使用 "!"方式,即 action名稱 ! 方法名稱 app
<action name="aggression" class="aggressionEventStatusAction" > <result name="success" >/WEB-INF/jsp/aggression/aggressionReport_main.jsp</result> <result name="update" type="chain"> <param name="actionName">aggression</param> <param name="namespace">/</param> </result> </action>
2. 使用通配符方式 *,(有人建議用這種方式) jsp
<action name="*_*" class="edu.ncut.labshare.action.{1}Action" method="{2}"> <result>/resource/{1}_{2}Success.jsp</result> </action>
須要注意的是, url
1. 若是在web.xml 是這樣配置的 spa
<filter-mapping> <filter-name>struts2</filter-name> <url-pattern>*.action</url-pattern> </filter-mapping>在頁面上寫連接的時候要寫成: http://localhost:8080/ALEConsole/aggression!update .action 或者是
http://localhost:8080/ALEConsole/aggression_update.action code
而不要寫成:http://localhost:8080/ALEConsole/aggression.action_update,由於.action是後綴。 xml
2. 新版的Struts2(具體從哪一個版本起忘了),默認關閉DMI功能。須要在struts.xml 中打開: io
<constant name="struts.enable.DynamicMethodInvocation" value="true"/> class
有一個問題就是:使用DMI方式配置,若是出現action之間的跳轉的該怎麼寫,還請各位指點!
struts2