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, botów: 0