Hibernate: java.sql.SQLException: попытка продолжить работу после отката транзакции - PullRequest
0 голосов
/ 01 марта 2012

В Hibernate при получении ОБЪЕКТА из базы данных произошла следующая ошибка.Ребята, пожалуйста, дайте мне знать, при каких условиях возникнет эта ошибка?Ничего не изменилось в коде.Один и тот же фрагмент кода успешно работает годами.

Каковы возможные причины этого исключения?Любое предложение приветствуется.Большое спасибо: -)

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)

1 Ответ

0 голосов
/ 01 марта 2012

Я полагаю, что в коде (на стороне сервера) всегда была ошибка, которая просто скрывалась, потому что никогда не было отката транзакции.

Итак, сначала нужно проверить, почему транзакция сейчас не выполняется (база данныхпроблема целостности или схема изменилась?) и затем нужно добавить тест, имитирующий откат и исправить код сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...