2012-10-10 76 views
1

我的應用程序使用hsql作爲數據庫。它一直工作到現在。在生產中,我得到了異常org.hibernate.SerializationException無法反序列化EOF異常。我無法獲得完整的堆棧跟蹤,因爲在我的代碼中沒有正確捕獲異常。無法反序列化eof異常

我也沒有導致此異常的事件的確切順序。重新啓動tomcat和hql後,問題消失了。

對不起,但請我需要一些關於根本原因分析的幫助。這可能是什麼問題?

validateSession(); 
     Session session = SessionFactory.getInstance(SessionContext.DISTRIBUTED).getSession(); 
     session.beginTransaction(); 
     List results; 
     try { 
      Criteria cri = session.createCriteria(Filter.class); 
      cri.add(Restrictions.eq("user", userVO.user())); 
      setLazyMode(cri); 
      results = cri.list(); 
      session.getTransaction().commit(); 
     } finally { 
      rollbackIfStillOpen(session); 
     } 

回答

0

說不上這是否會幫助你,但我有同樣的問題,看來我有我的@Id成員,而不是上面的吸氣器...

我覺得休眠異常消息是非常非常差。我不得不調試並創建特殊的測試案例來解決這個問題。對於hibernate來說,這樣做會很困難:我找不到Id。它是註釋還是映射?把你的註釋放在getter而不是成員上。

這使我不知道爲什麼有一次它必須在吸氣劑和其他時間在成員......爲什麼不把所有的成員或吸氣劑?爲什麼所有這些廢話呢?