У меня есть API отдыха, и я хочу перехватить все исключения, чтобы отправить пользовательское сообщение для клиента при возникновении какой-либо ошибки.
Я перехватил исключения с помощью try {...} catch (Exception e) {...} но в этих режимах откат не выполняется и данные сохраняются.
@POST
@Transactional
public Response add(Foo foo) {
try {
Foo add = this.service.add(foo);
return Response.status(CREATED)
.entity(add)
.build();
} catch (Exception e) {
return Response.status(BAD_REQUEST)
.entity("Contact the support! Error: " + e.getMessage())
.build();
}
}
Я хочу откатить транзакцию, поскольку данные неверны.