有一个问题很是不明白查了百度的N篇文档也没有说清楚的
问题描述如下:
1.之前弄过的一个webwork和spring整合的例子,配置了webwork.objectFactory = spring,
webwork.objectFactory.spring.autoWire = name两项, 意思就是说明了webwork的action是要交给spring来管理的,但是在spring的配置文件中 又没有配置 <bean id="action别名" class="action全路径">,反倒是在webwork.xml中直接配置的<action name="xx" class="action完整类名">.那这样以来配置上面的两项就没有意义了啊? 于是我把他注释掉 则项目无法登陆了 (登陆的action有问题了)     请教各位明白的人给与解释,谢啦2.我拿struts2和spring整合同样做了个跟上面一样的实验,注释掉struts.objectFactory=spring,程序依然可以正常,我迷茫了,于是又测试一种情况(此时并没有打开struts.objectFactory=spring的注释)   把struts2的action交给spring管理(也就是配置bean id="action别名" class="action完整路径"),然后在struts.xml中指定action的class为bean中的id, 程序同样正常运行, 可是我此时并没有打开struts.objectObject的配置啊   迷茫啊 求解释

解决方案 »

  1.   

    这个问题需要问哪些研究不要透彻的人了。是不是jar包里面有默认的配置属性!!!!
      

  2.   

    检查有没有包:struts2-spring-plugin.jar
    这里面的配置文件,struts-plugin.xml中包含
    <constant name="struts.objectFactory" value="spring" />
    将覆盖掉struts2中struts.objectFactory的值。
    所以有这个包,不用配置struts.objectFactory,也一样可以实现struts2 spring整合。
      

  3.   

    关于第一个问题,struts配置action,和spring配置bean是两回事。
    这么简单理解(未必全面),action主要控制层,控制页面跳转,bean是service服务层,是业务逻辑。
      

  4.   


    确实有struts-plugin-spring.jar,  但是我把他删除掉,实验同样成立..