回答
我終於找到了解決方案。可以在Spring中注入一個EntityManager而不需要使用@PersistenceContext。有一個Spring的factorybean可以創建一個共享的EntityManager。鑑於實體管理器工廠:
<bean id="entityManager" class="org.springframework.orm.jpa.support.SharedEntityManagerBean">
<property name="entityManagerFactory" ref="entityManagerFactory" />
</bean>
<bean id="myJpaFacade" class="com.example.MyJpaFacade">
<property name="entityManager" ref="entityManager" />
</bean>
現在我可以刪除MyJpaFacade的@PersistenceContext註釋,這樣的Glassfish不會嘗試查找並注入實體管理器到EntityManager的財產。
春天配置可以使用GF不會」瞭解不同的註釋。沒有你的代碼的一些例子,很難走得更遠。
沒有任何東西會將DI關閉......它是容器的一部分,因此您需要使用它不關心的註釋。
問題是@PersistenceContext,它是從Spring注入的。我一直沒有找到一個非JEE,Spring的替代品。 – 2011-04-08 05:43:22
只需使用完整的軟件包名稱,如@ javax.persistence.PersistenceContext private EntityManager em; – Preston 2011-04-08 15:53:49
我無法看到@PersistenceContext EntityManager em; (在java文件的頂部有一個導入)和@ javax.persistence.PersistenceContext private EntityManager em;兩者都是從Glassfish中注入的,而Glassfish是失敗的,而我的spring配置文件,如果Glassfish不成功,它將會成功。 – 2011-04-12 07:48:55
- 1. Spring依賴注入
- 2. Spring 3依賴注入
- 3. Spring Boot + DynamoDBTypeConverter依賴注入
- 4. Spring傳遞依賴注入
- 5. Spring依賴注入失敗
- 6. spring 3註解依賴注入
- 7. 原因使用Spring依賴注入
- 8. 使用Grails Spring DSL的依賴注入
- 9. Spring依賴注入,使用@Named或@Resource?
- 10. Spring MVC中的依賴注入
- 11. GWT或Spring中的依賴注入
- 12. Spring MVC中的依賴注入?
- 13. 使用依賴注入來注入依賴注入器
- 14. 在Spring中使用依賴注入調用ApplicationContext.getBean()嗎?
- 15. Spring Java對象依賴注入
- 16. Spring依賴注入@Autowired without setter
- 17. Spring依賴注入對象池
- 18. 依賴注入Spring框架 - 工作
- 19. Spring - 向ServletContextListener注入依賴項
- 20. Spring依賴注入範圍混淆
- 21. 澤西與Spring 4依賴注入
- 22. Spring 3.0依賴注入的最小JARs
- 23. 依賴注入
- 24. 依賴注入
- 25. 依賴注入
- 26. 依賴注入
- 27. 依賴注入
- 28. 依賴注入
- 29. 什麼是Spring對依賴注入的最小依賴?
- 30. 在Spring中使用依賴注入來替換工廠模式
另一個好處是,如果實體bean或persistence.xml已被更改,JRebel現在更好地重新注入新的EntityManager。 – 2011-09-23 11:27:47