我正在開發具有多個彈簧上下文的Web應用程序。它有一個保持業務邏輯,hibernate會話和應用程序的核心需求的主要上下文,其他上下文用於spring mvc綁定。通常,應用程序正常工作和一切,但是當我刷新主背景下,努力實現從其他上下文Hibernate的Session,Hibernate的Session拋出此異常:Spring上下文刷新使Hibernate會話拋出此異常:找不到當前線程的會話
org.hibernate.HibernateException: No Session found for current thread at
org.springframework.orm.hibernate4.SpringSessionContext.currentSession(SpringSessionContext.java:97) at
org.hibernate.internal.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:980)...
但有趣的是應用程序可以做的啓動開始,包括選擇大量的來自db的數據。
有沒有辦法讓我可以更新春天的安全和健康?
P.S:我可以得到沒有問題的其他spring上下文對象。並且應用程序可以很好地處理多個上下文,直到我刷新主環境。我試着在main context之後刷新mvc上下文,從中我調用了hibernate session。在mvc上下文中仍然是一個例外。
好的,但這裏是問題:我不創建我的實體在春天的上下文中,他們創建在休眠會議,並沒有與春天上下文的關係。如果線程被銷燬並創建,那麼會在新線程中創建hibernate會話和實體。我在嘗試上下文刷新之前,應該在多個春天的上下文中工作。 – Masterhead