博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts2.5使用通配符的方式实现动态方法调用报错
阅读量:7067 次
发布时间:2019-06-28

本文共 1154 字,大约阅读时间需要 3 分钟。

在Struts2.5使用通配符的方式实现动态方法调用时报错,困扰了好久。。。

代码如下

<package name="default" extends="struts-default" namespace="/">

    </package>
    <package name="users" namespace="/users" extends="default">
    <action name="*_*" class="action.{1}Action" method="{2}">
    <result name="login_success">/users/Users_login_success.jsp</result>
    <result name="login_failure">/users/Users_login.jsp</result>
    </action>
 </package>

报错信息如下:There is no Action mapped for namespace [/users] and action name [Users_login] associated with context path [/Hibernate-struts-student].

可以确定的是,我的xml配置没有问题

在之前的版本,动态使用方法时,要把Struts.xml中添加<constant name="struts.enable.DynamicMethodInvocation" value="true"/>

但是在2.5版本,这个方法行不通原来在struts2.5 中为了增加安全性,在 struts.xml 添加了这么个属性:<allow-methods>方法名(可多个)</allowmethods>,添加完成之后就可以正常运行通配符的配置了。

 eg:<allowed-methods>add,addUI,list</allowed-methods>

果然在修改之后可以了,修改后的文件:

<package name="users" namespace="/users" extends="default">

    <action name="*_*" class="action.{1}Action" method="{2}">
    <result name="login_success">/users/Users_login_success.jsp</result>
    <result name="login_failure">/users/Users_login.jsp</result>
    <allowed-methods>login</allowed-methods>
    </action>
 </package>

转载地址:http://vaall.baihongyu.com/

你可能感兴趣的文章
移动端布局 全套解决方案 (附代码)
查看>>
ObjC 多线程简析(二)- os_unfair_lock的类型和自旋锁与互斥锁的比较
查看>>
结构模式 01-外观模式(facade)
查看>>
源码阅读:AFNetworking(十二)——UIButton+AFNetworking
查看>>
Kubernetes Helm入门指南
查看>>
用commander做一个自己的eslint脚手架
查看>>
iOS下JS与OC互相调用(五)--UIWebView + WebViewJavascriptBridge
查看>>
C++检索
查看>>
优化体系结构 - 数据外置减少中间表
查看>>
PAT A1120
查看>>
如何在 Titanic Kaggle Challenge 中获得0.8134分
查看>>
前端新手秘籍丶
查看>>
【跃迁之路】【727天】程序员高效学习方法论探索系列(实验阶段484-2019.2.17)...
查看>>
redux源码解析
查看>>
从理论到实践 全面理解HTTP/2
查看>>
vue2.X 解决同一路由跳转只有参数变化的情况下,组件不刷新的问题
查看>>
深度强化学习DQN(Deep Q Network)原理及例子:如何解决迷宫问题,附源码
查看>>
我是如何设计 Upload 上传组件的
查看>>
weekly 2019-02-15
查看>>
SpringBoot+jsp项目启动出现404
查看>>