Hibernate OneToMany-nie mogę zachować dziecka

Odpowiedz Nowy wątek
2014-12-22 16:18
0

Witam
Mam w bazie danych relacje User 1--N Contact 1-1 Address
Niestety gdy tworzę nowe dziecko i dodaje to do zbioru dzieci właściciela po zrobieniu saveOrUpdate() na właścielu nie zapisuje mi się dziecko.
Co ciekawe sam obiekt Contact zapisuje mi się gdy nie ustawiam właściciela...


//Kod Właściciela
@OneToMany(mappedBy="owner",cascade={CascadeType.ALL,CascadeType.PERSIST,CascadeType.MERGE}) 
    public Set<Contact> getContacts() {
        return contacts;
    }
public void addContact(Contact contact){
        contact.setOwner(this);
        contacts.add(contact);
    }

//Kod dziecka
@ManyToOne(fetch=FetchType.EAGER)
    @JoinColumn(name="user_id")
    private User owner;

W przypadku contact-address jest ok i gdy zapisuje nowy contact(bez rodzica) address zostaje zachowany


Nie pomagam przez PM. Pytania zadaje się na forum.
edytowany 1x, ostatnio: scibi92, 2014-12-22 16:19

Pozostało 580 znaków

2014-12-22 16:55
Czarny Młot
0

Poczytaj o kaskadach. W swoim kodzie masz zbedne merge/persist

Pozostało 580 znaków

2014-12-22 18:17
0

No faktycznie tamte było niepotrzebne,ale wciąż nie mogę znaleźć błędu i dowiedzieć się czemu dziecko nie chcę się zachować...


Nie pomagam przez PM. Pytania zadaje się na forum.

Pozostało 580 znaków

2014-12-22 19:27
Świetny Terrorysta
0

Mowilem zebys poczytal o kaskadach, musisz dodac kaskade po obydwu stronach jesli ma dzialac z jednej i drugiej strony. To jest oczywiste

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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