今天碰到一個問題,在顯示實體的集合屬性的時候竟然報錯:org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role。記得在看seam preference的時候,里面提到seam已經解決了hibernage的這個痼疾,所以感覺很奇怪。在研究了代碼并google之后,終于發現了問題,原來是配置EntityManager的時候出現了錯誤:
原來的配置: @PersistenceContext(unitName="default") EntityManager mgr;
修改后: @PersistenceContext(type=PersistenceContextType.EXTENDED,unitName="default") EntityManager mgr;
錯誤原因,有位仁兄解釋的很清楚,附原帖:http://www.seamframework.org/Community/HowToAvoidLazyInitializationException
原來的配置: @PersistenceContext(unitName="default") EntityManager mgr;
修改后: @PersistenceContext(type=PersistenceContextType.EXTENDED,unitName="default") EntityManager mgr;
錯誤原因,有位仁兄解釋的很清楚,附原帖:http://www.seamframework.org/Community/HowToAvoidLazyInitializationException