关于Struts2通配符无效的说明

在struts2.3之前的版本,正常的配置就可以了,但在struts2.3版本之后,使用通配符调用方法时,内部会验证是否允许访问该方法。

1、struts2.5 为了增加安全性,在 struts.xml 添加了这么个属性:<global-allowed-methods>regex:.*</global-allowed-methods>,例子如下:

<package name="default" extends="struts-default" namespace="/index" >
<global-allowed-methods>regex:.*</global-allowed-methods>

<action name="User_add" class="com.wg.struts2.UserAction" >
<result>/user/addUser.jsp</result>
</action>

<action name="*_*" class="com.wg.struts2.{1}Action" method="{2}">
<result>/user/{2}{1}.jsp</result>
</action>

<action name="help" >
<result>/help.jsp</result>
</action>

</package>

2、当使用动态调用方法时(action名 + 感叹号 + 方法名进行方法调用),如:<a href="<%=context %>/index/User_add!add">添加用户</a><br />,则需要在配置文件中加上配置:

<constant name="struts.enable.DynamicMethodInvocation" value="true" />

 

posted @   JUN王者  阅读(2346)  评论(0编辑  收藏  举报
编辑推荐:
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)
· 程序员常用高效实用工具推荐,办公效率提升利器!
点击右上角即可分享
微信分享提示