struts2 拦截器问题

问题描述

struts2使用拦截器(自定义拦截器)时出现以下问题:当不使用拦截器时页面正常跳转,当使用拦截器后页面总是跳转到<result name="error">/error.jsp</result>页面,不管输入的是正确还是错误!请各位解答是怎么回事,谢谢了!附相关代码:struts.xml:<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"><struts><package name="struts2Demo" extends="struts-default"><interceptors><interceptor name="myinterceptor" class="interceptor.MyInterceptor"></interceptor></interceptors><action name="myaction" method="execute" class="action.MyTestAction"><result name="success">/success.jsp</result><result name="error">/error.jsp</result><interceptor-ref name="myinterceptor"></interceptor-ref></action></package></struts> MyInterceptor.java:package interceptor;import com.opensymphony.xwork2.ActionInvocation;import com.opensymphony.xwork2.interceptor.AbstractInterceptor;public class MyInterceptor extends AbstractInterceptor {@Overridepublic String intercept(ActionInvocation invocation) throws Exception {long start = System.currentTimeMillis();String res = invocation.invoke();long end = System.currentTimeMillis();System.out.println("执行"+ invocation.getClass().getName()+"耗时"+(end-start)+"ms");return res;}}

解决方案

<action name="myaction" method="execute" class="action.MyTestAction"> <result name="success">/success.jsp</result> <result name="error">/error.jsp</result> <interceptor-ref name="defaultStack"/> <interceptor-ref name="myinterceptor"></interceptor-ref> </action> 这样就对了
解决方案二:
<interceptor-ref name="defaultStack"/><interceptor-ref name="myinterceptor"></interceptor-ref> 你应该在自己的拦截器前面先引用默认的拦截器
解决方案三:
前面加上 <interceptor-ref name="defaultStack"/>因为你自定义了 默认的就失效了

时间: 2024-10-27 21:02:06

struts2 拦截器问题的相关文章

package-ssh的struts2拦截器拦截请求后页面为什么没有跳转

问题描述 ssh的struts2拦截器拦截请求后页面为什么没有跳转 我在struts.xml里把拦截器添加到了新的拦截器栈,命名了一个package名,然后我在一个子的struts-action-index.xml里继承了这个package做登录验证,并且程序执行时已经进入了拦截器类,并且执行完了类里的代码,返回了Action.Login,为什么通过全局返回处理页面没有跳转到登录页面 <package name=""struts-default-json""

遍历-Struts2拦截器记录日志出现一些bug

问题描述 Struts2拦截器记录日志出现一些bug 自己在写一个小工程,想用拦截器实现记录日志的功能,就是没点一次操作记录一条日志,拦截器配好了,但是每次操作都会记录两条一样的数据,我Strut.xml是method跳method,(比 如先更改数据在遍历所有数据)如果改成method的跳jsp会记录一条更改数据操作,,但是感觉这样展现效果不是很好,用debug调试点一次方法拦截器走了两次,有没有好点的解决方法,在线等 解决方案 http://blog.sina.com.cn/s/blog_5

struts2拦截器的问题获得的我拦截每个类下面每个方法的“参数类型”和“实参”

问题描述 struts2拦截器的问题获得的我拦截每个类下面每个方法的"参数类型"和"实参" 定义好struts2的全局拦截器之后 怎么在代码里面获得的我拦截每个类下面每个方法的"参数类型"和"实参"

JavaWeb中Struts2拦截器深入分析(一)_java

一.struts2中的拦截器(框架功能核心) 1.过滤器VS拦截器 过滤器VS拦截器功能是一回事.过滤器是Servlet规范中的技术,可以对请求和响应进行过滤. 拦截器是Struts2框架中的技术,实现AOP(面向切面)的编程思想,是可插拔的, 可以对访问某个 Action 方法之前或之后实施拦截. 拦截器栈(Interceptor Stack): 将拦截器按一定的顺序联结成一条链. 在访问被拦截的方法时, Struts2拦截器链中的拦截器就会按其之前定义的顺序被依次调用 Struts2执行原理

javaweb-关于Struts2拦截器问题。

问题描述 关于Struts2拦截器问题. 按网上说的,我可以实现一个action的拦截了: 可是我想 把 某个路径下的action全部拦截,怎样写?我不可能逐个逐个action都去给它配置个拦截器吧? 网上搜索无果,跪求大神给个demo. 解决方案 可以看下这个http://www.blogjava.net/baoyaer/articles/120028.html/拦截的就是你的项目根目录下的所有路径 解决方案二: 在写上传文件的程序时,出现了异常,引发了我对Struts2上传文件的过程的Deb

Struts2拦截器---intercept()方法返回值

问题描述 Struts2拦截器---intercept()方法返回值 Struts2拦截器方面的intercept()方法的返回值有什么用?

struts2.0-Struts2拦截器Struts2拦截器Struts2拦截器Struts2拦截器

问题描述 Struts2拦截器Struts2拦截器Struts2拦截器Struts2拦截器 请问谁有Struts2拦截器学习的详细资料,请问谁有Struts2拦截器学习的详细资料,感谢哈 解决方案 ? Struts2拦截器 ? ? 一.什么是拦截器? 1.拦截器,在AOP(Aspect-Oriented Programming<面向切面编程>)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作.拦截是AOP的一种实现策略. 在Webwork的中文文档的解释为--拦截器是动态

struts2 拦截器 ajax-struts2 拦截器如何获得ajax传来的参数

问题描述 struts2 拦截器如何获得ajax传来的参数 如题,已知必定是ajax提交,如何在拦截器里获得参数.... 解决方案 如何struts2拦截器传参,Action通过getter获得struts2拦截器 获得请求方法名+获得请求参数 解决方案二: 用Action,继承自ActionSupport

struts2 拦截器不起作用

问题描述 自定义了判断用户时候登陆的拦截器,并配置只一次执行action,拦截器不起作用连着两次执行action,拦截器才会起作用比如,通过login.html登陆后,输入list.action的地址,会返回登陆界面,但是拦截器程序没有输出(我在里面有print输出)如果连着两次输入list.action的话,才会显示内容求大神解答struts2拦截器配置<interceptors><interceptorname="authority"class="int

关于struts2拦截器验证跳转的问题

问题描述 大家好,感谢查看我的帖子.我如今碰到个问题,关于struts2拦截器的.我想实现一个功能,就是拦截器登录验证的功能,但碰到个问题,有点不知道咋办,问题如下:用户想访问添加产品这个action,但他没有登录,因此会被添加产品前的拦截器拦截,并跳转到登录页面,这是问题来了,我想在这是用户验证成功后直接跳转之前他想进入的那个action,也就是那个添加产品action,这个该怎么设置? 解决方案 解决方案二:没有人会吗解决方案三:struts的拦截器没具体弄过servlet的filter倒是