2011-10-23 97 views
3

这是我的ApplicationContext.xml。由于此错误,我无法运行我的程序:无法初始化sessionFactory。 Spring 3中的Hibernate 3

线程“main”中的异常org.springframework.beans.factory.BeanCreationException:在类路径资源中定义名称为'sessionFactory'的bean时创建错误[ApplicationContext.xml] :bean的实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例bean类[org.springframework.orm.hibernate3.LocalSessionFactoryBean]:构造抛出异常;嵌套的例外是java.lang.NoClassDefFoundError

我必须说,HibernateVoc扩展HibernateDaoSupport的。我已经浏览了几个网页来搜索如何使用HibernateDaoSupport,这些是初始化sessionFactory的正确属性......我还没有设法解决这个问题。

感谢你们!

<bean id="datasource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
<property name="driverClassName" value="org.gjt.mm.mysql.Driver" /> 
<property name="url" value="jdbc:mysql://localhost/voc" /> 
<property name="username" value="root" /> 
<property name="password" value="" /> 
</bean> 
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> 
<property name="dataSource" ref="datasource" /> 
<property name="mappingResources"> 
    <list> 
     <value>com/ju/voc/domain/words/Word.hbm.xml</value> 
     <value>com/ju/voc/domain/categroies/Category.hbm.xml</value> 
    </list> 
</property> 
<property name="hibernateProperties"> 
    <props> 
     <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop> 
    </props> 
</property> 
</bean> 
<bean id="hibernateVoc" class="com.ju.voc.data.HibernateVoc"> 
<property name="sessionFactory" ref="sessionFactory" /> 
</bean> 

P.S.我使用Maven,所以我从那里下载库。

+0

某些类必须在类路径中丢失。堆栈跟踪中的“由...引起”行应该告诉你更多关于它发生的位置以及哪些类可能丢失的信息。 –

回答

6

你缺少的依赖冬眠。

因为spring-orm神器handles ORM using plain Hibernate, JPA, JDO and iBatis(它几乎没有有意义的使用它们),所有这些depenencies是marked as optional,这意味着你必须引用在你的pom.xml的依赖关系。以下是如何参考hibernate核心的最新稳定版本:

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-core</artifactId> 
    <version>3.6.7.Final</version> 
</dependency> 
+0

这就是全部,那么容易,尽管在行动和其他一个关于Java EE 6有春天,我没有读过,我必须包括依赖于Hibernate的......我第一次尝试iBATIS的,现在我想Hibernate和我无法忍受如此多的困惑,如此多的版本和xml文件以及配置同一事物的不同方式......我知道这非常强大,但是一开始它就是一团糟。我的意思是,我不知道我在做正确的事情来学习Java框架......你做了什么? – honnix

+0

@honnix尝试过,失败了,再次尝试:-) –

3

你有(java.lang.NoClassDefFoundError),异常意味着你忘记在你的应用程序库罐子。尝试深入分析日志跟踪,并找到缺少的类,以包含适当的jar。可能你错过了休眠依赖。

+0

我已经设置为pom.xml中的依赖项:junit,mysql和org.springframweork。剩下的是什么? – honnix

+3

休眠缺失。要使用Hibernate,你需要Hibernate。 –

相关问题