Определите, какой объект вызвал исключение оптимистической блокировки - PullRequest
1 голос
/ 31 января 2012

У меня есть веб-приложение, реализованное в JSF и JPA. В пользовательском интерфейсе пользователи могут обновить кучу разных объектов, прежде чем выбрать «сохранение» всей операции. Во время операции сохранения, если два пользователя пересекали данные, один из них получит исключение оптимистической блокировки, что вполне нормально. Однако я хочу иметь возможность сказать, какая конкретная сущность вызвала исключение «Оптимистическая блокировка» при обработке исключения, чтобы отобразить маркер в соответствующей строке в пользовательском интерфейсе. Используя eclipselink, в блоке catch для исключения блокировки optimisitc, есть ли способ идентифицировать объект, вызвавший исключение оптимистической блокировки?

1 Ответ

3 голосов
/ 31 января 2012

В JPA OptimisticLockException есть метод getEntity (), который возвращает объект, вызвавший ошибку блокировки. EclipseLink OptimisticLockException, вызванное исключением JPA, также имеет метод getObject ().

...