if (validity.isVetoed()) {
transactionManager.abortTransaction();
throw JsonApplicationException.create(HttpStatusCode.BAD_REQUEST, objectRepr, validity.getReason());
}
transactionManager.endTransaction();
} finally {
// in case an exception got thrown somewhere...
if (!transactionManager.getTransaction().getState().isComplete()) {
transactionManager.abortTransaction();
}