2223242526272829303132
return result; } finally { try { if (con.isInTransaction()) con.rollback(); } finally { con.invalidate(); } } }