hibernate - Not-updatable child entity -


i have such method:

@transactional public void add(user2 object) {     session session = sessionfactoryutils.getsession(sessionfactory, false);      session.save(object);      string number = generatenumber(object.getperson().getid(), object.getperson().getfranchise().getid());     object.setlogin(number);     object.getperson().setnumber(number);     session.update(object); } 

entity user2 contains entity person. see, first - adding new record database , want update sonme fields of user2 , person. problem user2 field updated (hql query generated user2 entity too). how can make update person entity too? thank you

@entity @table(name="users") public class user2 implements serializable {    /**  *   */ private static final long serialversionuid = 1l;  /**  *   */ @id @column(name = "id") @generatedvalue private long id;  /**  *   */ @column(name = "login") private string login;  /**  *   */ @column(name = "password") private string password;  /**  *   */ @onetoone(cascade = cascadetype.all, targetentity = person2.class, orphanremoval = true) @joincolumn(name = "person_id") private person2 person;   /**  *   */ public user2() {      this.setid(0l); } /*getters ans setters*/ }  @entity @table(name="persons") public class person2 implements serializable {    /**  *   */ private static final long serialversionuid = 1l;  /**  *   */ @id @column(name = "id") @generatedvalue private long id;  /**  *   */ @column(name = "title", nullable = true) private string position;  /**  *   */ @column(name = "firstname", nullable = true) private string firstname;  /**  *   */ @column(name = "lastname", nullable = true) private string lastname;  /**  *   */ @column(name = "birthdate", nullable = true) private string birthdate;  /**  *   */ @column(name = "notes") private string notes;  /**  *   */ public person2() {      this.setid(0l); } /* getters ans setters */ } 

why ding way.please try following:

@transactional public void add(user2 object) {     session session = sessionfactoryutils.getsession(sessionfactory, false);     string number = generatenumber(object.getperson().getid(), object.getperson().getfranchise().getid());     object.setlogin(number);     object.getperson().setnumber(number);     session.saveorupdate(object); 

Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -