Home Persisting a @OneToOne child entity with @MapsId throws "error:detached entity passed to persist" in Hibernate
Reply: 0

Persisting a @OneToOne child entity with @MapsId throws "error:detached entity passed to persist" in Hibernate

user1413 Published in April 22, 2018, 12:34 am

I read https://vladmihalcea.com/the-best-way-to-map-a-onetoone-relationship-with-jpa-and-hibernate/. I tried suggestion config like(using spring data JPA,hibernate 5.0 as vendor ):

public class PaperSubjectType{
    private Long id;

    @OneToOne(fetch = FetchType.LAZY)
    private PaperSetting paperSetting;

class PaperSetting{
  private Long id;

first I tried the example:

PaperSetting paperSettingInDb = paperSettingRepository.findOne(1);
PaperSubjectType paperSubjectType = new PaperSubjectType();


error:detached entity passed to persist:PaperSetting. it seems hibernate take PaperSetting as detached when cascade

2 if I want to create both PaperSubjectType and PaperSetting together,do I need to do this:

PaperSetting paperSetting = new PaperSetting();
PaperSetting  paperSettingInDbNew = paperSettingRepository.save(paperSetting);
PaperSubjectType paperSubjectType = new PaperSubjectType();

or I should use bidirectional in this situation? thank you!

You need to login account before you can post.

About| Privacy statement| Terms of Service| Advertising| Contact us| Help| Sitemap|
Processed in 0.309863 second(s) , Gzip On .

© 2016 Powered by mzan.com design MATCHINFO