У меня есть два объекта: PlayerProfileEntity и UserInfoEntity У меня есть соединение с userInfoEntity и PlaterProfileEntity и сохранение моей записи в базе данных следующим образом:
Session session = sessionFactory.openSession();
Transaction tr = session.beginTransaction();
Criteria crit = session.createCriteria(PlayerProfileEntity.class);
player.setUserId(new UserInfoEntity());
player.getUserId().setAddress(user.getUserId().getAddress());
session.save(player);
tr.commit();
Я использовал эту ассоциацию в классе PlayerProfileEntity
@ManyToOne (fetch = FetchType.LAZY)
@Cascade({CascadeType.REFRESH})
@JoinColumn(name="userid")
Я получаю эту ошибку:
org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: com.shared.entity.UserInfoEntity
Примечание. Если я использую CascadeType.All, я получаю эту ошибку:
Cannot add or update a child row: a foreign key constraint fails
Любая идея, как я могу решить эту проблему
Спасибо