日期:2014-05-20  浏览次数:20581 次

Spring2.0在Struts1.2中使用拦截器问题
我先描述下,我的问题

问题1:以前写了一套ACTION,但是里面没有使用HTTPSESSION来判断登录

现在想在不修改原来代码基础上,使用SPRING里面在Interceptor来判断用户登录

请问大大们有什么好的解决方案.

问题2:
下面的内容是从网上找到,但是有不明白的地方.
---------------------------------------
先写一个权限拦截public class AuthorityInterceptor implements MethodInterceptor{},然后在SPRING容器中如下配置: 

<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"> 
<property name="beanNames"> 
<list> 
<value>/自己的ACTION</value>//这个地方是写什么格式 "com.action.AddAction"?还是"com/action/AddAction"? 
<value>/自己的ACTION</value> 
.. 
</list> 
</property> 
<property name="interceptorNames"> 
<list> 
<value>authorityInterceptor</value> 
</list> 
</property> 
</bean> 
<bean id="authorityInterceptor" class="org.yourself.struts.authority.AuthorityInterceptor"/>
//我按照网上说的,试了下,按理说只要ACTION执行了,就应该会被拦截,但是发现没有被拦截到.小弟我现在已经晕头转向了.
--------------------------------------------


------解决方案--------------------

<bean name="yourAction" class="">
</bean>
<value>yourAction</value>
------解决方案--------------------
再说清楚点吧,假设action叫login
<bean name="/login" class="">
</bean>
你的拦截器
<property name="beanNames"> 
<list> 
<value>/login</value>
</list> 
</property> 
<value>这里是上面的bean的name</value>
------解决方案--------------------
使用struts2,的拦截器就可以了;很简单的
------解决方案--------------------
要继承同一个接口