关于struts2的interceptor问题。。。。。
用了拦截器之后,在AbstractInterceptor里可以用request.getAttribute获取,但在action不能用getter获取提交的表单,却可以用r...
用了拦截器之后,在AbstractInterceptor里可以用request.getAttribute获取,但在action不能用getter获取提交的表单,却可以用request.getParamenter获取,怎样解决啊?配置如下,难道少了什么?
------------------------------------------------------------------
<interceptors>
<interceptor name="checkmanagerlogin" class="com.tarena.dangdang.interceptor.CheckManagerLogin"/>
</interceptors>
<action name="updatepassword" class="com.tarena.dangdang.action.manager.UpdatePasswordAction">
<interceptor-ref name="checkmanagerlogin"/>
<result name="success">/WEB-INF/manager/selfinfo/updatepassword.jsp</result>
</action> 展开
------------------------------------------------------------------
<interceptors>
<interceptor name="checkmanagerlogin" class="com.tarena.dangdang.interceptor.CheckManagerLogin"/>
</interceptors>
<action name="updatepassword" class="com.tarena.dangdang.action.manager.UpdatePasswordAction">
<interceptor-ref name="checkmanagerlogin"/>
<result name="success">/WEB-INF/manager/selfinfo/updatepassword.jsp</result>
</action> 展开
3个回答
展开全部
哥们我只看了struts.xml
错误:
<interceptor-ref name="InterceptorStack"/>
里面有放拦截器栈的吗?
你可以设置成默认的 对所有的package 下的 Action 起作用
<!-- 设置全局默认的拦截器(写你自己的)-->
<default-interceptor-ref name="InterceptorStack" />
如果只是单个想让Action起作用就在想要拦截的action里设置:
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="myInterceptor"/>
而你调的是单个属性的Action的拦截器 里面却放置了拦截器栈
<action name="myActionDemo01" class="my.bag.action.myAction">
<interceptor-ref name="InterceptorStack"/>
就好比把一个装了两瓶白酒的袋子 硬塞到一个酒盒里 能放的进去吗?
错误:
<interceptor-ref name="InterceptorStack"/>
里面有放拦截器栈的吗?
你可以设置成默认的 对所有的package 下的 Action 起作用
<!-- 设置全局默认的拦截器(写你自己的)-->
<default-interceptor-ref name="InterceptorStack" />
如果只是单个想让Action起作用就在想要拦截的action里设置:
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="myInterceptor"/>
而你调的是单个属性的Action的拦截器 里面却放置了拦截器栈
<action name="myActionDemo01" class="my.bag.action.myAction">
<interceptor-ref name="InterceptorStack"/>
就好比把一个装了两瓶白酒的袋子 硬塞到一个酒盒里 能放的进去吗?
展开全部
没有把你的拦截器加载到struts2默认的拦截器栈中。
可以参考:
<interceptors>
<interceptor name="myInterceptor" class="com.test.interceptor.MyInterceptor">
<param name="hello">world</param>
</interceptor>
<interceptor name="myInterceptor2" class="com.test.interceptor.MyInterceptor2">
</interceptor>
<interceptor name="myInterceptor3" class="com.test.interceptor.MyInterceptor3">
</interceptor>
<interceptor-stack name="myStack">
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="myStack"></default-interceptor-ref>
可以参考:
<interceptors>
<interceptor name="myInterceptor" class="com.test.interceptor.MyInterceptor">
<param name="hello">world</param>
</interceptor>
<interceptor name="myInterceptor2" class="com.test.interceptor.MyInterceptor2">
</interceptor>
<interceptor name="myInterceptor3" class="com.test.interceptor.MyInterceptor3">
</interceptor>
<interceptor-stack name="myStack">
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="myStack"></default-interceptor-ref>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首当其冲少了 defaultStack
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询