public void updatePerson(Person person) { Person personDao = em.find(Person.class, person.getId()); em.getTransaction().begin(); System.out.println("--->" + person); personDao.setFirstname(person.getFirstname()); personDao.setLastname(person.getLastname()); personDao.setBirthdate(person.getBirthdate()); personDao.setEmail(person.getEmail()); personDao.setWebsite(person.getWebsite()); if (person.getGroup() != null) { Group group = new Group(); group.setGroupID(person.getGroup().getGroupID()); group.setName(person.getGroup().getName()); personDao.setGroup(group); } em.getTransaction().commit(); }