Struts2动态执行方法时,在2.5以后的版本需要打开动态开关。
在struts.xml里进行配置
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
还要在Action里面打开正则表达式开关:
<global-allowed-methods>regex:.*</global-allowed-methods>
示范如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="true"></constant>
<package name="Test" extends="struts-default">
<global-allowed-methods>regex:.*</global-allowed-methods>
<action name="*Action" class="Test.test" method="{1}">
<result name="success">/index2.jsp</result>
<result name="ok">/index.jsp</result>
</action>
</package>
</struts>