На основании ответа @ chris-dolphin, но используя вспомогательную функцию:
// Creates svg element, returned as jQuery object
function $s(elem) {
return $(document.createElementNS('http://www.w3.org/2000/svg', elem));
}
var $svg = $s("svg");
var $circle = $s("circle").attr({...});
$svg.append($circle);
Каждый вызванный метод должен быть в одной транзакции -> должен иметь аннотацию @Transactional
.
Если вы решили перехватить свое исключение и хотите выполнить откат, вы должны повторно его выбросить, например:
try {
doSomething();
catch (Exception e) {
logger.error("exception occurred", e);
throw new MyException(e);
}
Затем вы можете использовать в своей аннотации:
@Transactional(rollbackFor=MyExceptoin.class)
[ 116]
Это должно сработать.