struts2 spring2 hibernate3整合时依赖注入时空指针异常!有高手能解决吗

问题描述

[color=#FF0000]java.lang.NullPointerExceptioncom.hq.ictbox.struts.action.UserAction.execute(UserAction.java:53)sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethod)sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)java.lang.reflect.Method.invoke(Method.java:597)[/color]下面是Action:packagecom.hq.ictbox.struts.action;importcom.hq.ictbox.hi.dao.TbBoxDAO;importcom.hq.ictbox.hi.dao.TbUserDAO;importcom.opensymphony.xwork2.ActionSupport;publicclassUserActionextendsActionSupport{privatestaticStringFORWARD=null;//Action类公用私有变量,用来做页面导航标志privateStringuserName;privateStringuserPassword;privateTbUserDAOtbUserDAO;privateTbBoxDAOtbBoxDAO;//依赖注入业务逻辑组件的setter方法publicvoidsetTbUserDAO(TbUserDAOtbUserDAO){this.tbUserDAO=tbUserDAO;}//依赖注入业务逻辑组件的setter方法publicvoidsetTbBoxDAO(TbBoxDAOtbBoxDAO){this.tbBoxDAO=tbBoxDAO;}publicStringgetUserName(){returnuserName;}publicvoidsetUserName(StringuserName){this.userName=userName;}publicStringgetUserPassword(){returnuserPassword;}publicvoidsetUserPassword(StringuserPassword){this.userPassword=userPassword;}publicStringexecute()throwsException{userName=getUserName().trim();//属性值即JSP页面上输入的值userPassword=getUserPassword().trim();//属性值即JSP页面上输入的值System.out.print(userName);System.out.print(userPassword);tbUserDAO.print(userName,userPassword;)这行的print()只是一个简单的打印方法.........................................53行try{FORWARD="success";}catch(Exceptionex){ex.printStackTrace();}returnFORWARD;}}配置文件:<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.0.xsd"><beanid="dataSource"class="org.springframework.jdbc.datasource.DriverManagerDataSource"><propertyname="driverClassName"value="com.mysql.jdbc.Driver"/><propertyname="url"value="jdbc:mysql://localhost:3306/db_ictboxm"/><propertyname="username"value="root"/><propertyname="password"value="caiqi"/></bean><!--Configurationhibernate--><beanid="sessionFactory"class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><propertyname="dataSource"ref="dataSource"/><propertyname="mappingResources"><list><value>com/hq/ictbox/hi/mapping/TbUser.hbm.xml</value><value>com/hq/ictbox/hi/mapping/TbBox.hbm.xml</value><value>com/hq/ictbox/hi/mapping/TbExt.hbm.xml</value></list></property><propertyname="hibernateProperties"><props><propkey="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop><propkey="show_sql">true</prop><propkey="hibernate.hbm2ddl.auto">update</prop><propkey="hibernate.jdbc.batch_size">20</prop></props></property></bean><beanid="TbUserDAO"class="com.hq.ictbox.hi.dao.TbUserDAO"><propertyname="sessionFactory"ref="sessionFactory"/></bean><beanid="TbBoxDAO"class="com.hq.ictbox.hi.dao.TbBoxDAO"><propertyname="sessionFactory"ref="sessionFactory"/></bean><beanid="TbExtDAO"class="com.hq.ictbox.hi.dao.TbExtDAO"><propertyname="sessionFactory"ref="sessionFactory"/></bean><!--Configurationtransaction--><beanid="transactionManager"class="org.springframework.orm.hibernate3.HibernateTransactionManager"><propertyname="sessionFactory"ref="sessionFactory"/></bean><beanid="transactionInterceptor"class="org.springframework.transaction.interceptor.TransactionInterceptor"><propertyname="transactionManager"ref="transactionManager"/><propertyname="transactionAttributes"><props><propkey="get*">PROPAGATION_REQUIRED,readOnly</prop><propkey="*">PROPAGATION_REQUIRED</prop></props></property></bean><beanid="BeanNameAutoProxyCreator"class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator"><propertyname="beanNames"><list><value>IUserDao</value></list></property><propertyname="interceptorNames"><list><value>transactionInterceptor</value></list></property></bean></beans>

解决方案

解决方案二:
问题我自己还是找出来了,<beanid="TbUserDAO"class="com.hq.ictbox.hi.dao.TbUserDAO"><propertyname="sessionFactory"ref="sessionFactory"/></bean>中的id="TbUserDAO"应该对应Action中定义的tbUserDAO
解决方案三:
有时,应该靠自己,耐住性子认真的弄懂问题

时间: 2024-10-03 09:05:17

struts2 spring2 hibernate3整合时依赖注入时空指针异常!有高手能解决吗的相关文章

关于struts2+spring2+hibernate3的问题

问题描述 信息: Using DataSource [com.mchange.v2.c3p0.ComboPooledDataSource@e64686[ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, allUsers -> [root], autoCommitOnClose -> false, automaticTestTable -> null, breakA

struts2+spring2.0整合的问题

问题描述 小弟在做strut2和spring2.0整合的时候.老是出现下面的问题. 我先单独做的struts2的一个例子程序,没有问题, 再按照<struts2权威指南>这本书上进行整合,可就是报下面的错误,希望哪位大哥帮忙解决. 小弟都调试两天了....另外我想问问: 为什么我做struts2的例子的时候, 加入这个struts2-spring-plugin-2.0.11.1.jar包导入就出问题:嚴重的: Error filterStart, 把这个包去掉就可以... 是我的环境的问题还是

struts2 spring2 hibernate3 +oracle10G用c3p0出错

问题描述 <bean id="DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" abstract="false" singleton="true" lazy-init="default" autowire="default" dependency-check="default" destr

对PHP依赖注入的理解实例分析_php技巧

本文实例讲述了对PHP依赖注入的理解.分享给大家供大家参考,具体如下: 看Laravel的IoC容器文档只是介绍实例,但是没有说原理,之前用MVC框架都没有在意这个概念,无意中在phalcon的文档中看到这个详细的介绍,感觉豁然开朗,复制粘贴过来,主要是好久没有写东西了,现在确实很懒变得! 首先,我们假设,我们要开发一个组件命名为SomeComponent.这个组件中现在将要注入一个数据库连接. 在这个例子中,数据库连接在component中被创建,这种方法是不切实际的,这样做的话,我们将不能改

ABP框架的基础配置及依赖注入讲解_基础应用

配置ABP配置是通过在自己模块的PreInitialize方法中来实现的 代码示例如下: public class SimpleTaskSystemModule : AbpModule { public override void PreInitialize() { //在你的应用中添加语言包,这个是英语和作者的土耳其语. Configuration.Localization.Languages.Add(new LanguageInfo("en", "English"

在SSH(struts2.21+hibernate3.3.2+spring2.5)整合中遇到一个问题:

问题描述 在SSH(struts2.21+hibernate3.3.2+spring2.5)整合中遇到一个问题:菜鸟求解~~知道的大师们给个解决方案把~~~目的:在容器启动后,自动从数据库中读出数据然后在WEB的application范围内写入数据 ,这样在index.jsp,里只要直接读取application数据就行了,不每次都过action.(都是一些一般不变的数据.且数据不多)试验:1.在把Action设为单例后,容器启动后会自动运行,不能访问spring里的bean,及在构造方法里打印

spring依赖注入测试时出错

问题描述 spring依赖注入测试时出错 错误如下: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'analysisService': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationExcepti

构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(6)-Unity 2.x依赖注入by运行时注入[附源码]

原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(6)-Unity 2.x依赖注入by运行时注入[附源码] Unity 2.x依赖注入(控制反转)IOC,对于没有大项目经验的童鞋来说,这些都是陌生的名词,甚至有些同学还停留在拉控件的阶段. 您可以访问http://unity.codeplex.com/releases得到最新版本的Unity现在.当然,如果您在您的visual studio 中安装了Nuget 包管理器,你可以直接在Nuget中获取到最

无语中 第一次用struts2 与spring2.5整合出现一打错误 麻烦大侠写看哈

问题描述 Contextinitializationfailedjava.lang.NoClassDefFoundError:org/springframework/context/support/AbstractRefreshableConfigApplicationContextatjava.lang.ClassLoader.defineClass1(NativeMethod)atjava.lang.ClassLoader.defineClass(UnknownSource)atjava.s