jpa/hibernate mapowanie rekursywnych encji

0

Mam encję:

@Entity
@Table(name="common__Role")
public class Role {

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	public Long id;

	/**
	 * Parent Role id.
	 */
    @ManyToOne(cascade={CascadeType.MERGE})
    @JoinColumn(name="role_id")
	public Role role;
	
	@Constraints.Required
	public String name;

Do dodawanie tej encji mam formularz gdzie podaje się nazwę i wybiera z listy Rolę, której będzie podlegać nowa Rola (zależność rodzić-dziecko).
Problem pojawia się gdy select w formularzu z listą ról zostawiam pustę.
Dostaję wtedy błąd:

 Caused by: org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: models.Role.role -> models.Role

Wiem, że problem leży w relacji jaką utworzyłem przez konfigurację

     @ManyToOne(cascade={CascadeType.MERGE})

Niestesty nie wiem jak to rozwiązać.

0

Nie jestem specjalistą ale na pewno potrzeba CI tego CascadeType.Merge? Bez definiowania cascade nie przejdzie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1