`

spring实例化struts1或者struts2.x的action

 
阅读更多
spring实例化struts1或者struts2.x的action 
struts2.x

整合S2SH时做了个测试程序,总是报无法实例化Action的错误。郁闷。

测试部分代码是:

 ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");

StudentAction students = new StudentAction();

students.leader();

运行时总是显示Action不能实例化,开始很郁闷。看配置什么的都没问题啊。最后发现用
ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
StudentBean students = (StudentBean)ctx.getBean("studentBean");
students.findLeader();
就没有问题,郁闷中。。


后来发现应该是这样的。
Struts.xml中应该是这样:
<action name="loginAction" class="loginAction" >//此处的action class属性应该是applicationContext中spring实例化该action的 bean id 属性值。这样才是spring实例化的。
    <result name="leader">/Class_intro.jsp</result>
    <result name="cards">/Class_member.jsp</result>
   </action>


applicationContext.xml中:
<bean id="loginAction"
class="com.struts.action.StudentAction"
scope="prototype">
<property name="studentBean" ref="studentBean" />
</bean>

 

 

 

struts1.x

 

<action name="treeForm" path="/treeAction" scope="request"
   parameter="actions"
   type="org.springframework.web.struts.DelegatingActionProxy">
   <forward name="select"
    path="/platform/common/treeSelect.jsp" />
   <forward name="defeat" path="/common/error.jsp" />
  </action>

 

applicationContext.xml中:
<bean id="treeAction"
class="com.struts.action.treeAction"
scope="prototype">
<property name="studentBean" ref="studentBean" />
</bean>

分享到:
评论

相关推荐

    org.springframework.web.struts-3.1.0.M2.jar

    2. **依赖注入(DI)**:Spring框架的核心特性之一就是依赖注入,它可以将Struts中的Action类实例化和管理交由Spring负责,这样可以实现Action类的解耦,并方便进行单元测试。 3. **AOP(面向切面编程)**:Spring...

    Struts2.X+Hibernate3.X+Spring2.5 整合

    然后,Struts2与Spring的整合主要是通过Spring的Struts2插件实现,它可以自动将Struts2的Action实例化交给Spring管理,实现依赖注入。这样,Action类就可以通过@Autowired注解获取到由Spring管理的其他服务bean。 ...

    org.springframework.web.struts-sources-3.0.4.RELEASE.jar

    在3.0.x系列中,Spring提供了对Struts 1.x的支持,允许开发者利用Spring的特性来增强Struts应用,例如事务管理、AOP(面向切面编程)、数据绑定和类型转换等。 1. **Spring与Struts的整合机制** Spring与Struts的...

    struts2-spring-2.5.14.1.jar

    1. **依赖注入**:Spring的DI可以用于初始化Struts2的动作类,这样可以避免硬编码依赖,使得组件更易于测试和重构。 2. **Action实例管理**:Spring可以管理Struts2 Action的生命周期,包括单例或多例模式的选择,...

    Struts1.3+Spring4.x+Hibernate4.x框架整合实现对书籍的增删改查(含分页)

    通过Spring的DI,我们可以轻松地为对象注入所需的依赖,如数据访问对象(DAO),而无需硬编码实例化过程。此外,Spring的AOP可以用于事务管理,确保在处理数据库操作时的原子性和一致性。 Hibernate4.x是ORM...

    Struts2 2.3.15 + Hibernate 3.x.x + Spring 3.2.3整合JAR包

    6. **整合工作**:在Struts2配置中指定Spring的Action代理,使Action实例由Spring管理。同时,通过Hibernate的SessionFactory获取Session,进行数据操作。 7. **编写业务逻辑**:定义Action类,使用Spring注入...

    struts2-core-2.0.12.jar

    Struts2的插件系统使得扩展框架功能变得简单,例如,Spring插件可以方便地将Struts2与Spring框架集成,实现依赖注入。 综上所述,Struts2-core-2.0.12.jar包含了Struts2框架的核心功能,为Java Web开发者提供了高效...

    Struts1.x+Spring+Hibernate开发实例

    2. **配置文件**:如struts-config.xml、spring-context.xml、hibernate.cfg.xml,分别配置Struts1.x的动作映射、Spring的bean定义和Hibernate的数据源及实体映射。 3. **实体类**:表示数据库中的表,通常会包含...

    Struts1.x_action

    Struts1.x_action 是一个与Apache Struts 1.x框架相关的资源包,它包含了用于构建基于Java的企业级Web...不过,需要注意的是,Struts1.x框架现在已被认为过时,最新的项目推荐使用更新的框架如Spring MVC或Struts2。

    spring,struts1.x ,hibernate整合

    Spring、Struts1.x 和 Hibernate 是经典的 Java Web 开发框架,它们的整合是构建企业级应用的常见方式。这三个框架分别负责不同的职责:Spring 提供依赖注入和事务管理,Struts1.x 负责视图和控制层,而 Hibernate ...

    struts2+spring2.5.x

    整合Struts2 和 Spring,可以通过Struts2的Spring插件实现,这样Action实例可以由Spring容器管理,实现依赖注入。配置完成后,Action类可以声明对Spring Bean的依赖,Spring会负责初始化和销毁这些Action实例。 ```...

    struts2-spring-plugin-2.3.4.jar

    通过Struts 2-Spring 插件,我们可以将Struts 2 的Action 对象交给Spring 来管理,Spring 负责初始化、配置和销毁这些对象。这样,Action 类不再需要自己去创建依赖的对象,而是通过构造函数或setter 方法接收Spring...

    基于eclipse的struts2.x+hibernate3.x+spring3.x整合文档及实例源码

    6. **实例化Action**:在Struts2的Action配置中,通过Spring插件的`&lt;spring:property&gt;`标签注入需要的Service或DAO。 **Eclipse集成**: 在Eclipse中,可以使用Maven或者Ivy等构建工具来管理SSH的依赖。创建项目时...

    Spring3.x_Struts2.x_Hibernate3.x整合

    4. **整合工作流**:当用户发送请求到服务器,Struts2会拦截请求,根据配置找到相应的Action,由Spring实例化并注入依赖。Action执行业务逻辑,通过SessionFactory获取Session,执行数据库操作。完成后,Action返回...

    struts1.x + hibernate 3+spring 3 集成实例

    这个"struts1.x + hibernate 3+spring 3 集成实例"是一个空项目,特别适合初学者理解和学习,因为有详细的注释,使得理解过程更为简单易懂。 Struts1.x 是一个基于MVC(Model-View-Controller)设计模式的Java Web...

    Struts2_Spring_Example.zip_spring struts2_struts2-examp

    3. **Action 类**:这些类继承自 `ActionSupport` 或自定义的 Struts2 动作类,并且被声明为 Spring Bean。Struts2 通过 ActionProxy 将请求转发到 Spring 容器来创建动作类实例。 4. **Service 类**:这些类通常...

    Struts2+Spring演示实例源代码

    这个"Struts2+Spring演示实例源代码"旨在展示如何将这两个框架整合在一起,以实现更高效、更模块化的Web应用开发。通过这个实例,开发者可以学习到以下关键知识点: 1. **Struts2框架**: - **Action类**:它是...

    struts2.Spring.0.Hibernate3.3--整合实例(含数据库文件).rar

    1. 配置Struts2:在struts.xml中配置Action,通过Spring插件指定Action的实现类,由Spring来创建和管理。 2. 配置Spring:在spring.xml中定义Bean,包括Action、Service、DAO以及SessionFactory。对于...

    spring在web.xml中和在struts中的不同配置..pdf

    Struts2的Spring插件会在Struts配置文件(如struts.xml)中定义一个`&lt;package&gt;`,包含`&lt;interceptors&gt;`和`&lt;default-interceptor-ref&gt;`元素,这样Struts2就会知道如何与Spring协作,将Action实例化和依赖注入交给...

    Struts2的常量详解

    struts.action.extension 属性指定需要 Struts 2 处理的请求后缀,该属性的默认值是 action,即所有匹配*.action 的请求都由 Struts 2 处理。 14. struts.serve.static struts.serve.static 属性设置是否通过 JAR ...

Global site tag (gtag.js) - Google Analytics