如题,请大家帮帮忙,谢谢啦~~

解决方案 »

  1.   

    strtus 2 依靠 struts-default中的拦截来处理所有种类的请求参数准备和注入。
    <interceptor-stack name="paramsPrepareParamsStack">如果楼主想使用 AOP 一个是使用struts AOP 机制。还有一个就是Spring AOP机制和Struts 的AOP 机制混用就可以了。
    即原来的 Action 变为 Spring的proxy,同时使用 struts-default配置的参数处理栈。如果想再深入,可以通过阅读源代码去寻求。主线明白了,代码阅读起来并不困难呢。
      

  2.   

    请问“原来的 Action 变为 Spring的proxy,同时使用 struts-default配置的参数处理栈”这一个怎样实现?
    我现在已经写好了一个已实现MethodInterceptor接口的spring AOP拦截类,里面的invoke方法已实现,可以在这个基础上进行修改吗?如果不可以的话,请问应该怎样做?谢谢啦~~
      

  3.   

    我写的代码:
    action类
    public class UsersManageAction extends ActionHelper  implements UsersManageActionItf
    {
    private String uid;
    ……(uid对应的get,set函数,以及一系列的方法)
             public String ****(){……}
    }
    其中,uid在页面中定义了的。
    然后,使用spring的aop对这一个类的****方法进行拦截。
    但是,我发现spring拦截到这个方法后,uid的值为null,也就是页面上的对应的标签uid的值没有传入到aop代理里面。请问这个问题如何解决?继续等待答案……
      

  4.   

    好了,果断放弃spring aop。我直接用struts的拦截器了。谢谢大家~
      

  5.   

    to dulilihuiStruts 2 支持Spring的plug功能,能够从Spring的配置文件中获取对象。
    即Strut 2提供了Context来plug Spring Context,通过Action 的class属性值关联Spring的配置bean id。具体的做法参照 Struts 2.1.8 showcase 中的web.xml、application.xml 和 struts-chat.xml。