Transactional trx = serviceMethod.getAnnotation(Transactional.class);
Preconditions.checkNotNull(transactionManager,"The method is transactionnal, but no transaction manager was detected!");
TransactionTemplate trxTpl = new TransactionTemplate(transactionManager);
trxTpl.setIsolationLevel(trx.isolation().value());
trxTpl.setReadOnly(trx.readOnly());
trxTpl.setPropagationBehavior(trx.propagation().value());
trxTpl.setTimeout(trx.timeout());
trxTpl.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
try {