我想做一个SESSION验证,本来是想做个过滤,但是只是部分ACTION才用验证SESSION,所以所有SPRING的拦截。居然拦截不到
我晕,帮忙分析下好不<!--session验证拦截-->
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>/searchverify</value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>advisor</value>
</list>
</property>
</bean>
<bean id="advisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
<property name="advice">
<ref bean="sessionInterceptor"/>
</property>
<property name="patterns">
<list>
<value>.*list</value>
</list>
</property>
</bean> <bean id="sessionInterceptor" class="greate.ma3go.Interceptor.SessionInterceptor"/><bean name="/searchverify" class="greate.ma3go.core.web.action.searchverifyAction" />就是拦截searchverifyAction里面的list方法下面是那个拦截器package greate.ma3go.Interceptor;import greate.ma3go.core.utils.Constants;import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionMapping;
import javax.servlet.http.*;public class SessionInterceptor implements MethodInterceptor {
protected transient Log logger = LogFactory.getLog(getClass());
public Object invoke(MethodInvocation invocation) throws Throwable
{
logger.info("=======开始拦截=========");
HttpServletRequest request = null;
ActionMapping mapping = null;
Object[] args = invocation.getArguments();
for (int i = 0 ; i < args.length ; i++ )
{
if (args[i] instanceof HttpServletRequest) request = (HttpServletRequest)args[i];
if (args[i] instanceof ActionMapping) mapping = (ActionMapping)args[i];
}
if ( request.getSession().getAttribute(Constants.CURRENT_Personal) != null)
{
return invocation.proceed();
}
else
{
return mapping.findForward("sessionError");
}
}
}访问/searchverify.do?method=list居然拦截器没起左右哦,
大家研究研究一下
我晕,帮忙分析下好不<!--session验证拦截-->
<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<property name="beanNames">
<list>
<value>/searchverify</value>
</list>
</property>
<property name="interceptorNames">
<list>
<value>advisor</value>
</list>
</property>
</bean>
<bean id="advisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
<property name="advice">
<ref bean="sessionInterceptor"/>
</property>
<property name="patterns">
<list>
<value>.*list</value>
</list>
</property>
</bean> <bean id="sessionInterceptor" class="greate.ma3go.Interceptor.SessionInterceptor"/><bean name="/searchverify" class="greate.ma3go.core.web.action.searchverifyAction" />就是拦截searchverifyAction里面的list方法下面是那个拦截器package greate.ma3go.Interceptor;import greate.ma3go.core.utils.Constants;import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionMapping;
import javax.servlet.http.*;public class SessionInterceptor implements MethodInterceptor {
protected transient Log logger = LogFactory.getLog(getClass());
public Object invoke(MethodInvocation invocation) throws Throwable
{
logger.info("=======开始拦截=========");
HttpServletRequest request = null;
ActionMapping mapping = null;
Object[] args = invocation.getArguments();
for (int i = 0 ; i < args.length ; i++ )
{
if (args[i] instanceof HttpServletRequest) request = (HttpServletRequest)args[i];
if (args[i] instanceof ActionMapping) mapping = (ActionMapping)args[i];
}
if ( request.getSession().getAttribute(Constants.CURRENT_Personal) != null)
{
return invocation.proceed();
}
else
{
return mapping.findForward("sessionError");
}
}
}访问/searchverify.do?method=list居然拦截器没起左右哦,
大家研究研究一下
解决方案 »
- 请教,xtext解析dsl与插件化
- 服务器端如何去调用客户端的应用程序?求高手指点。
- Spring get出来的东西,修改之后。必须要set回去才变化吗?
- 如何生成struts2国际化资源文件
- 关于 zk spring hibernate 的session问题
- 为什么!!!!!!!!!不同本地硬盘不能调用包。用JAR都不好用。
- JBuilder中自带的DB(jds)的驱动怎样加载如WebLogic?
- 一个棘手的问题———代码画网络拓扑图
- 运行spring mvc 时报出的异常
- 自定义标签
- 哪位大虾懂Shark工作流的
- 哭求spring+hibernate出现Generating Artifacts解决方法
Advisor[] advisors = ad.getAdvisors();
list 一下,看看有没有weave进去