我的webapp包含許多entityManagerFactory(DB),每個都有其唯一的名稱,如entityManagerFactoryApp,entityManagerFactoryBusiness,entityManagerFactoryForum等。當entityManagerFactory沒有命名爲「entityManagerFactory」
在一個web應用程序中,我必須添加OpenEntityManagerInViewFilter來實現「在視圖中打開會話」模式。
<filter>
<filter-name>Spring OpenEntityManagerInViewFilter</filter-name>
<filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Spring OpenEntityManagerInViewFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
但是運行的時候,春天抱怨NoSuchBeanDefinitionException: No bean named 'entityManagerFactory' is defined
但我的電磁場未命名「的entityManagerFactory」,我查找OpenEntityManagerInViewFilter的代碼,並發現setEntityManagerFactoryBeanName()
的方法,但我應該怎麼設置它在web.xml中的價值? 此外,我有多個EMFs,我在web.xml中定義了多個OpenEntityManagerInViewFilter
?
謝謝先進。
環境:彈簧3.0.2,休眠3.5.1.Final,樹脂4.0.7,JPA2(冬眠-JPA-2.0-API)
謝謝,它的工作原理! – smallufo 2010-06-21 22:59:13