首页 > 代码库 > struts2动态方法无法调用

struts2动态方法无法调用

struts2 大约2.3版本以后,调用动态方法会产生类似下面的错误

:Unable to instantiate Action, top.juson.study.action.Action2!eat, defined for ‘action2!eat‘ in namespace ‘/‘top.juson.study.action.Action2!eat

 

技术分享

 

其中的defined for ‘action2!eat‘ 说明这里没有把eat正常的解析为方法,而是和前面的action一起解析成了方法,

原因是Struts为了安全考虑,默认把动态方法的功能关闭了,

如果需要使用,需要在Struts配置文件struts.xml中加入:

<constant name="struts.enable.DynamicMethodInvocation" value="http://www.mamicode.com/true"></constant>

指定打开动态方法功能,如下图:

技术分享

笔者所用Struts版本为2.3

struts2动态方法无法调用