隨筆-10  評論-23  文章-32  trackbacks-0

          我的系統(tǒng)是使用hibernate3,struts2,spring搭建。

          在我的系統(tǒng)中,此異常出現(xiàn)我感覺比較奇怪,我已經(jīng)配置spring OpenSessionInViewFilter,如下
              <filter>
                  <filter-name>lazyLoadingFilter</filter-name>
                  <filter-class> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
              </filter>
              <filter-mapping>
                  <filter-name>lazyLoadingFilter</filter-name>
                  <url-pattern>/*</url-pattern>
              </filter-mapping>

          并確保將此過濾器配置到struts2之前,而且我在中沒有配置fetch和lazy屬性,代碼中的關(guān)聯(lián)對象之間的調(diào)用也是沒有問題的。我認為上面的配置應(yīng)該是已經(jīng)起到作用了。

          但是在系統(tǒng)中仍然可能報no session 錯誤,我將操作對象對應(yīng)的數(shù)據(jù)庫中記錄的ID進行修改后,不再報此錯誤,修改回來后再次報錯(其他任何字段都沒有修改過,一次可以知道唯一導(dǎo)致no session錯誤的問題就是對象的ID,而和其他參數(shù)都沒有任何關(guān)系,和spring opensessioninviewfilter也沒有關(guān)系,與fetch,lazy也沒有關(guān)系).

          在出現(xiàn)此問題之前,數(shù)據(jù)庫有從外來源導(dǎo)入過數(shù)據(jù),通過 del plsql工具導(dǎo)入的。我懷疑是否與導(dǎo)入數(shù)據(jù)的原因有關(guān)。于是我測試通過系統(tǒng)功能新建了測試對象,對新建對象的操作也沒有報no session錯誤。

          對象關(guān)系圖

           

          解決:

          我將有問題的A對象的數(shù)據(jù)庫中的ID 手動修改成可以正確執(zhí)行的,原有數(shù)據(jù)操作不會報錯了。新建數(shù)據(jù)暫時沒有發(fā)現(xiàn)有此問題。但是導(dǎo)致此問題的原因不明,如果有人有遇到和我一樣的情況,請幫我解惑,十分感激。

          posted on 2009-12-25 10:56 liuyimx 閱讀(869) 評論(1)  編輯  收藏 所屬分類: hibernate

          評論:
          # re: hibernate LazyInitializationException - could not initialize proxy - no Session 2010-12-30 13:41 | wade.hou
          你好,我最近也碰到過你這樣的問題。 不知道你解決了沒?
          如果 你解決了能告訴我一下嗎? QQ:782191937  回復(fù)  更多評論
            

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 红桥区| 都江堰市| 沈丘县| 瑞安市| 毕节市| 西昌市| 汶川县| 荆州市| 焦作市| 孟连| 泰州市| 汉源县| 读书| 白城市| 天峨县| 新化县| 蒙阴县| 监利县| 沂水县| 青岛市| 广州市| 桐乡市| 金溪县| 滦南县| 营山县| 宝应县| 河间市| 马尔康县| 孟津县| 怀柔区| 平原县| 拜城县| 邵东县| 呼伦贝尔市| 翁牛特旗| 永定县| 金乡县| 博客| 靖州| 石台县| 平罗县|