【发布时间】:2014-06-17 21:41:17
【问题描述】:
我正在使用 spring 和 hibernate 开发一个应用程序。
当我运行我的应用程序时,我收到以下错误消息:
org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'transactionManager' is defined
在我的上下文应用程序文件中,我有这个:
<bean id="tansactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
我用谷歌搜索了这个问题,我找到了一个我必须改变这一行的解决方案:
<bean id="tansactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
作者:
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
但我遇到了另一个问题:
org.springframework.beans.NotWritablePropertyException: Invalid property 'sessionFactory' of bean class [org.springframework.orm.jpa.JpaTransactionManager]: Bean property 'sessionFactory' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
我该如何解决这个问题?
【问题讨论】:
-
发布完整的堆栈跟踪。
-
你使用 jpa 和 hibernate 吗?如果您使用 jpa,则必须将 sessionFactory 更改为 entityManagerFactory。
-
第一种方法失败的原因仅仅是因为 bean ID 中的拼写错误。
标签: eclipse spring transactionmanager