У меня возникла особая проблема при попытке сохранить коллекцию объектов в режиме гибернации.Кажется, что когда у меня есть несколько объектов одного типа, hibernate не может сгенерировать идентификатор, поэтому я получаю org.hibernate.NonUniqueObjectException
.
Пример:
App1 -> urls
{strApplicationId: 1; URLTypeEntity {strCode: 1, strDescription: Reply}, strURL: www.address1.com},
{strApplicationId: 1; URLTypeEntity {strCode: 1, strDescription: Reply}, strURL: www.address2.com},
{strApplicationId: 1; URLTypeEntity {strCode: 2, strDescription: Home}, strURL: www.address3.com}
Если у меня нет двух URL с одинаковым URLTypeEntity вколлекция, ошибка не вызывается
@Entity
@Table(name = "tbl_urls")
public class URLEntity
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="intCode")
private Integer intCode;
private String strApplicationID;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "intType", referencedColumnName = "intCode")
private URLTypeEntity objURLType;
private String strURL;
}
@Entity
@Table(name = "tbl_applications")
public class ApplicationEntity
{
@OneToMany(cascade = CascadeType.ALL, mappedBy = "strApplicationID")
private List<URLEntity> colURLs;
}