2012-03-01 66 views
0

在Hibernate中,在從數據庫中獲取OBJECT時發生錯誤。你們可以請讓我知道在什麼情況下會發生這種錯誤? 代碼中沒有任何更改。多年來,相同的代碼已成功運行。Hibernate:java.sql.SQLException:在事務回滾之後嘗試繼續工作

這種例外的可能原因是什麼?任何建議都是值得歡迎的。非常感謝:-)

java.sql.SQLException: Attempt to continue working after transaction rolledback ! 
at com.ibm.ws.rsadapter.AdapterUtil.toSQLException(AdapterUtil.java:1376) 
at com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.beginTransactionIfNecessary(WSJdbcConnection.java:701) 
at com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.prepareStatement(WSJdbcConnection.java:2084) 
at com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.prepareStatement(WSJdbcConnection.java:2039) 
at net.sf.hibernate.impl.BatcherImpl.getPreparedStatement(BatcherImpl.java:257) 
at net.sf.hibernate.impl.BatcherImpl.getPreparedStatement(BatcherImpl.java:232) 
at net.sf.hibernate.impl.BatcherImpl.prepareQueryStatement(BatcherImpl.java:65) 
at net.sf.hibernate.loader.Loader.prepareQueryStatement(Loader.java:779) 
at net.sf.hibernate.loader.Loader.doQuery(Loader.java:265) 
at net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:133) 
at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:911) 
at net.sf.hibernate.loader.Loader.loadEntity(Loader.java:931) 
at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:59) 
at net.sf.hibernate.loader.EntityLoader.load(EntityLoader.java:51) 
at net.sf.hibernate.persister.EntityPersister.load(EntityPersister.java:419) 
at net.sf.hibernate.impl.SessionImpl.doLoad(SessionImpl.java:2117) 
at net.sf.hibernate.impl.SessionImpl.doLoadByClass(SessionImpl.java:1991) 
at net.sf.hibernate.impl.SessionImpl.get(SessionImpl.java:1927) 
+0

我認爲問題是與服務器端... – 2012-03-01 09:20:21

回答

0

我猜,代碼(服務器端)總有其簡單地隱藏,因爲從來沒有一個事務回滾的錯誤。因此,首先需要檢查爲什麼事務現在失敗(數據庫完整性問題或模式已更改?),接下來,必須添加一個模擬回滾並修復服務器代碼的測試。