Я использую hibernate jpa для выполнения пакетного обновления.Hibernate Jpa пакетная вставка не работает
Не содержит никаких ошибок или исключений, но транзакционный откат каждый раз дает.
2015-04-21 16:30:33,548 ERROR [org.jboss.as.ejb3] (Thread-344 (HornetQ-client-global-threads-462057890)) javax.ejb.EJBTransactionRolledbackException: no transaction is in progress
Это моя партия код обновления
getEm().getTransaction().begin();
System.out.println("transaction started--------------");
try{
for(Receipt ReceiptEntity : arrReceiptEntity){
getEm().persist(ReceiptEntity);
}
getEm().getTransaction().commit();
System.out.println("commited");
}catch(Exception exception){
System.out.println("error----------------------------------------------------------------------");
if(getEm().getTransaction().isActive())
getEm().getTransaction().rollback();
LOG.error(exception);
}finally
{
getEm().flush();
getEm().clear();
getEm().close();
}
Я использую Postgres сервер 9.4.1 Пожалуйста, помогите мне понять, что я делаю неправильно. Я проверил другие подобные должности, но ничего не помогло.
UPDATE: я получил решение: Проблема была я промывочной уже разгоряченное transaction.And, таким образом, он не давал мне никаких сделки по ошибке прогресса вместе с одним я разместил above.So я просто Убрана `getEm().промывать(); и getEm(). clear(); из блока finally и он начал работать :)
ли вы пытаетесь добавить точки останова в вашой IDE (как затмение) и посмотреть на какую линию он не ? – Jay
Thx для вопроса и обновления, пожалуйста, отправьте сообщение (и примите) его как ответ. – xerx593
getEm(). GetTransaction(). Commit(); кода уже сбросили данные. – BalaajiChander