【发布时间】:2017-05-09 22:23:43
【问题描述】:
我是 Hibernate 的新手,正在尝试运行一个 java/spring 示例,该示例从 MS SqlServer 中的表中检索数据。每次我尝试运行程序时,数据源都可以正常加载。但是当 spring 尝试加载 session facotry 时,会出现以下错误:
Exception in thread "main" org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sessionFactory'
defined in class path resource [ml/spring/src/applicationContext.xml]:
Instantiation of bean failed; nested exception is
java.lang.NoClassDefFoundError: javax/transaction/TransactionManager
Caused by: java.lang.NoClassDefFoundError: javax/transaction/TransactionManager
下面是我正在使用的应用上下文文件:
<!-- Data source bean -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
<property name="driverClassName">
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value></property>
<property name="url">
<value>jdbc:microsoft:sqlserver://machine:port</value></property>
<property name="username"><value>user</value></property>
<property name="password"><value>password</value></property>
</bean>
<!-- Session Factory Bean -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource"><ref local="dataSource"/></property>
<property name="mappingResources">
<list>
<value>authors.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<value>
hibernate.dialect=net.sf.hibernate.dialect.SQLServerDialect
</value>
</property>
</bean>
<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
【问题讨论】:
-
我一直在研究类似的问题。如果我能解决我的问题,我会发布,但我和你一样,对休眠不太了解。
-
只是一个评论 - 您可以通过将
与bar 甚至 p:foo="bar" 如果你使用 spring 支持的 'p' 命名空间。