初学Struts2,遇到这样一个问题:定义了一个Action(Helloworld),他的execute()方法内部执行一些判断输入name的判断,成功返回SUCCESS,否则返回INPUT;
有定义了一个拦截器greetingInterceptor用来拦截Helloworld(Action),更具当前的时间给用户问候;比如输入的name=tongkaiteng可能输出地信息为三种情况
Hello tongkaiteng Good morning
Hello tongkaiteng Good afternoon
Hello tongkaiteng Good evening
在GreetingInterceptor中没有对name进行设置,得到的结果无论如何都是name=null
很郁闷,Action不是会自动调用所拥有属性的set方法吗,我明明传了name值,却总是为空
这种情况只是在我陪了拦截器之后才存在,搞了很长时间,最终得出一个结论:
给一个Action配置拦截器之后,是不会帮你调用Action所拥有的属性的set方法的,只有自己去吊。因为在拦截器里面,我们可以拿到我们的Action,手动去设置就行了
比如:
String name=invocation.getInvocationContext().get(ServletActionContext.HTTP_REQUEST).getParameter(“name”);
HelloWorld hw=(HelloWorld)(invocation.getAction).setName(name);
就用这种本方法来手动调用自定义Action里的set属性方法。
分享到:
相关推荐
InterCeptor
Postman-Interceptor下载
Struts2拦截器(Interceptor) Struts2拦截器(Interceptor)
利用反射和动态代理机制实现自定义拦截器Interceptor http://blog.csdn.net/alanchen520/article/details/34087833
详细介绍struts2 interceptor
logging-interceptor-3.14.4的jar包,用于okhttp网络拦截器
本篇文章主要介绍了详解Retrofit Interceptor(拦截器) 拦截请求并做相关处理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
通过代理和反射实现一个Interceptor框架
postman interceptor
jfinal中拦截器(Interceptor)的参数注入jfinal中拦截器(Interceptor)的参数注入
postman 和 postman interceptor。亲测可用,里边有说明博客
struts2 Interceptor拦截器 http://whitewolf.0fees.net
包含postman的chrome插件,postman-interceptor插件,离线安装,即可使用
免费Postman和Postman interceptor压缩包,Postman为文件夹,直接选择扩展程序中的 加载已解压的扩展程序 ,选择解压后的postman文件夹即可,postman-interceptor为crx文件,直接拖入到chrome://extensions/中即可
postman 和 postman interceptor。亲测可用。 说明博客https://blog.csdn.net/u012106306/article/details/90172863
Struts2.3.6实现自定义拦截器Interceptor http://blog.csdn.net/alanchen520/article/details/34086699
Struts2_interceptor_和_filter区别
Postman Interceptor 2022最新的版本 使用方法: 1,打开 chrome://extensions/ 2,解压文件夹 postman_interceptor-v1.1.2.7z 3,打开解压文件夹,拖动 ‘1.1.2_0’ 到 chrome://extensions/ postman interceptor v...
Postman4.1 匹配得最好的版本就是Interceptor_0.2.20 ,
Postman-Interceptor_v0.2.20 .Postman Interceptor必须和Postman联合使用。