2013-01-08 58 views
0

UPDATE:ADD Maven的依賴條件 * UPDATE:此錯誤加入行家depency *誤差的Spring bean

好日子解決。 我有AplicationContext.xml

<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> 
    <property name="namingStrategy"> 
     <ref bean="namingStrategy"/> 
    </property> 
    <property name="mappingResources"> 
     <list> 
      <!--<value>genericdaotest/domain/Person.hbm.xml</value>--> 
     </list> 
    </property> 
    <property name="hibernateProperties"> 
     <props> 
      <prop key="hibernate.dialect">org.hibernate.dialect.HSQLDialect</prop> 
      <prop key="hibernate.show_sql">true</prop> 
      <prop key="hibernate.hbm2ddl.auto">create</prop> 
     </props> 
    </property> 
    <property name="dataSource"> 
     <ref bean="dataSource"/> 
    </property> 
</bean> 
這部分

Maven的DEP春冬眠

<dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>3.1.1.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-test</artifactId> 
     <version>3.1.1.RELEASE</version> 
    </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-jdbc</artifactId> 
      <version>2.0.6</version> 
     </dependency> 


     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-core</artifactId> 
      <version>4.1.2.Final</version> 
     </dependency> 

但是,當我開始我的應用程序,它說我這個錯誤

Cannot find class [org.springframework.orm.hibernate3.LocalSessionFactoryBean] for bean with name 'sessionFactory' defined in class path resource [WEB-INF/applicationContext.xml]; nested exception is java.lang.ClassNotFoundException: org.springframework.orm.hibernate3.LocalSessionFactoryBean 

但我正在使用hibernate4。它有什麼魔力? =) 我已經嘗試重新部署應用程序,但結果是一樣的

+0

作爲春的版本使用的是?你可以發佈你的maven依賴嗎? –

+0

更新。我使用Intellij Idea 12,並添加支持框架spring和hibernate,所以一些jar文件被添加到項目的lib文件夾中 – nabiullinas

+0

嘗試添加Spring ORM依賴性: spring-orm enkor

回答

1

你已經錯過了Spring的ORM模塊:

<dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-orm</artifactId> 
     <version>3.1.1.RELEASE</version> 
    </dependency> 

Check the packages list,它包含了org.springframework.orm.hibernate3包,你需要的類。

另外,我覺得這個班是錯的,不應該是hibernate4.LocalSessionFactoryBean?你使用註釋嗎?還是XML?

+0

它可以幫助,非常感謝,但另一個錯誤:在類路徑資源[WEB-INF/applicationContext.xml]中定義名稱爲'sessionFactory'的bean時出錯:bean的初始化失敗;嵌套異常是java.lang.NoClassDefFoundError:org/hibernate/cache/CacheProvider – nabiullinas

0

在Spring應用程序上下文中更改會話工廠,以使用hibernate 4作爲您的maven相關性狀態。

org.springframework.orm.hibernate4.LocalSessionFactoryBean

,並添加彈簧ORM依賴