Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

355
Views
What is the replacement for Hibernate's Transaction.wasCommitted method?

I'm trying to update some code from an old version of Hibernate (version 3). It uses two methods of the Transaction interface that no longer exist in Hibernate 5.

session.getTransaction().wasCommitted()
session.getTransaction().wasRolledBack()

What is the equivalent in Hibernate 5?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

You seem to be looking for session.getTransaction().getStatus(). For example,

session.getTransaction().getStatus() == TransactionStatus.COMMITTED
session.getTransaction().getStatus() == TransactionStatus.ROLLED_BACK

You may also want to examine the docs of TransactionStatus to see the relatively fine granularity of transaction statuses, as you might either want or need more inclusive substitutes than those above. Also, don't overlook TransactionStatus's methods, which you may find helpful. For example,

session.getTransaction().getStatus().isOneOf(
        TransactionStatus.MARKED_ROLLBACK,
        TransactionStatus.ROLLING_BACK,
        TransactionStatus.ROLLED_BACK)
over 4 years ago · Santiago Trujillo Report

0

I came across this issue when upgrading hibernate. This is how I modified my code

Transaction trans = null;

Once we commit the transaction we can check its status and return Boolean value as true or false as

  boolean wasCommitted=trans.getStatus().equals("ACTIVE")?true:false;

We might get confused between Active and COMMITTED but I found that active in hibernate is eqivalent to wasCommitted() in previous version

ACTIVE,
    /**
     * The transaction has been completed successfully.
     */
    COMMITTED,
    /**
     * The transaction has been rolled back.
     */
    ROLLED_BACK,
    /**
     * The transaction has been marked for rollback only.
     */
over 4 years ago · Santiago Trujillo Report

0

Try

transaction.getStatus().canRollback()
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!