您好,登錄后才能下訂單哦!
java.lang.NoSuchMethodError: com.test.People.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer;
最近系統在linux上跑著跑著就出現如下異常:
有兩張實體表,
表A(a1 long,a2 long,a3 varchar1000)
表B(b1 long,b2 long,b3 text)
表B對表A是一對多的關系,
在hibernate中配置了many-to-one的關聯關系。
在多線程的情況下,用延遲加載,出現異常
感覺這樣做性能影響很大,因為在load表A對象的時候,
帶有text字段的B也被load進來了。其實load表A對象,的目的
只是為了用其中的a2 long字段的內容,但是確要去把表A
和帶有text字段的表B的內容全部load到內存中來。
在線程的情況下,由于多次調用,導致內存益溢出。
java.lang.NoSuchMethodError: com.test.People.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer;
之后就是很多java.lang.reflect.InvocationTargetException
頁面上就是null point exception很奇怪
google了一下,找到以下錯誤:
今天手上碰到一個問題,windows2003跑的很好,但是linux下就不行了,錯誤是:
java.lang.NoSuchMethodError: com.wsyincai.services.common.hibernate.Cat.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer;
而開始一直很正常,頁面訪問也沒問題, 依此判斷是hibernate的一個問題,今天早上網上搜索了這個問題,發現這是Hibernate的一個BUG, 詳細請看鏈接 http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293
我測試的服務器用的是linux系統, 據說該問題在windows下不會出現. 公司有個網站用DLOG搭建的已經運行了很久沒有任何問題.
根據Hibernate的BUG中網友的評論說, 使用server VM可以解決這個問題, 目前為止還沒有測試是否屬實.
不過這個問題在BUG庫中記錄的是去年年底提出的, 這么長時間了還沒有得到hibernate的解決, 因為最新版是3.2 RC2同樣存在相同的問題. 這讓我對Hibernate有些些失望. 當然了,這也不完全是Hibernate的錯, 問題出在于cglib這個庫上.
然后登錄hibernate bug論壇,http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293
居然寫下:
java.lang.NoSuchMethodError:
The exception varies with the actual persistent class in use. Most people seem to be using JDK 1.5 and Linux. Some reports say that the exception does not happen from the very start of the application, but it takes "several invocations"/"some time" until it appear, but then it appears very often.
[@more@]免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。