Tenho uma classe bean que referencia uma entidade.
Esse bean faz o relacionamento entre usuário e subArea.
Um usuário pode ter n subAreas.
E uma subArea pode pertencer a n usuários.
Sendo assim, minha classe ficou assim:
@Entity
@Table(name = "tbl_usuario_subarea")
public class UsuarioSubArea implements Serializable{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id_usuario_subarea")
private Integer idUsuarioSubArea;
@ManyToOne
@JoinColumn(name = "id_usuario", referencedColumnName = "id_usuario")
private Usuario usuario;
@ManyToOne
@JoinColumn(name = "id_subarea", referencedColumnName = "id_subarea")
private SubArea subArea;
// getters and setters
O usuário escolhe as subAreas para o usuário e clica em salvar.
Daí eu criei uma lista de ids e um for para adicionar no banco.
for (int idSubArea : this.idSubAreaList) {
this.usuarioSubArea.getSubArea().setIdSubArea(idSubArea);
this.usuarioSubAreaDAO.salvarUsuarioSubArea(this.usuarioSubArea);
}
Ele salva 1 registro e depois dá esse erro:
org.hibernate.PersistentObjectException: detached entity passed to persist: br.com.editorasaraiva.repositoriodigital.entity.UsuarioSubArea
Alguém sabe por que está aparecendo esse erro?