JPA/Hibernate @ManyToOne jako nieobowiązkowe pole

0

Witam. Zrobiłem formularz na stronie www. W formularzu wybiera się z list rozwijanych opcje. Wartości w listach są pobierane z bazy danych. W momencie kiedy użytkownik w pierwszym selectie wybierze jakąś wartość, to pojawia mu się dodatkowy input typu select. Dane dla tego selectu pobierane również są z bazy danych. Encja ta jest zrelacjonowana z główną encją formularza przy użyciu:

    @ManyToOne(cascade = CascadeType.MERGE)
    @JoinColumn(name="organizationalCellUnit_id", nullable=true)
    public OrganizationalCellUnit organizationalCellUnit = null;

W momencie kiedy użytkownik wybierze z pierwszego selectu inną opcję to ta nie jest już wymagana.
Niestesty podczas operacji

 this.persist

dostaję błąd:

Caused by: org.hibernate.TransientPropertyValueException: object references an unsaved transient instance - save the transient instance before flushing: models.MedicalIncident.organizationalCellUnit -> models.OrganizationalCellUnit

W bazie danych ta kolumna jest oznaczona jako null.
Problem pojawia się zawsze kiedy wybrana encja skorelowana @ManyToOne jest pusta.
Jak zaprojektować relację ManyToOne tak aby pozwala wpisywać wartości null?

0

Spróbuj zmienić z

@ManyToOne(cascade = CascadeType.MERGE) 

na @ManyToOne(cascade = CascadeType.ALL)

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