| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Сохранение списка сущностей в JPA |
| Автор: oson 20.1.2013, 20:21 | ||||||||||||
Подскажите пожалуйста в чем проблема
На странице есть возможность выбрать список имеющихся в базе адресов, затем создать Person, присвоить ему список адресов и затем сохранить этиот новый Person со списком адрресов, которые не новые, а считанные из базы в предыдущей транзакции. То есть List<Address> addresses уже есть в бд, но они считываются в отдельной транзакции.
Затем создается Person, в другом классе и в другой транзакции
И вот когда я хочу сохранить person, выпадает exception - detached entity passed to persist occurs Для того, чтобы этого избежать, приходится после создания Person делать
то есть сохранить его в одной транзакции, затем добавить adreses в persion
затем снова вызвать
Почему так получается? в чем проблема - почему не сохраняется person с добавленными адресами за раз? Спасибо. |
| Автор: mbasil 23.1.2013, 08:37 |
| Возможно потому, что mappedBy ставится на инверсной стороне, то есть подчиненной. Таким образом основной стороной в такой конструкции считается не Person, а Address. |
| Автор: oson 28.2.2013, 12:46 |
| Спасибо. |