Версия не обновляется в бине после сохранения - PullRequest
0 голосов
/ 20 марта 2012

У меня есть сущность JPA Person, которая имеет поле длинной версии @Version.Я делаю следующее:

<<transaction - begin>>
person.getId() --> == NULL
person.setVersion(1);
em.persist(person);
person.getId() --> returns 1 (this one is generated inside the persist call)
person.getVersion(); --> returns 1
<<transaction - end>>

Теперь, если я проверяю БД, версия = 2, но бин неправильно содержит 1.

Я вижу, что идентификатор сущности человека отображается правильнов личном случае.Тем не менее, версия остается прежней до вызова persist ().Почему?

1 Ответ

1 голос
/ 20 марта 2012

Возможно, вы находитесь "за пределами" границ спецификации:

Сущность может получить доступ к состоянию своего поля версии или свойству или экспортировать метод для использования приложением для доступа к версии, но должнане изменять значение версии.Только поставщику персистентности разрешается устанавливать или обновлять значение атрибута версии в объекте.

(Цитата из Спецификация JPA )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...