Bonsoir

J'ai 2 beans Entrée et Emplacement liés par une relation many to many et par conséquent, une 3e table a été générée.

Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Entity
@Table(name = "ENTREE")
public class Entree {
 
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "ID_ENTREE", updatable = false, nullable = false)
	private long idEntree;
@ManyToMany( fetch = FetchType.LAZY)
	 @JoinTable(name = "entree_emplacement",
     joinColumns = {
             @JoinColumn(name = "id_entree")},
     inverseJoinColumns = {
             @JoinColumn(name = "id_emplacement")})
	 private Set<Emplacement> emplacements = new HashSet<>();

Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Entity
@Table(name = "EMPLACEMENT")
public class Emplacement {
 
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "ID_EMPLACEMENT", updatable = false, nullable = false)
	private long idEmplacement;
 
	@Column(name = "NUM_EMPLACEMENT",  insertable=true, updatable=true, nullable=false)
	private String numEmplacement;
 
	@ManyToMany( fetch = FetchType.LAZY, mappedBy = "emplacements")
    private Set<Entree> entrees = new HashSet<>();

J'essaye de supprimer des lignes dans la 3e générée mais je reçois ce message d'erreur:

Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: entree_emplacement is not mapped
Voici mon code de suppression:

Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 @Transactional
	 @Modifying
	 @Query("DELETE from entree_emplacement WHERE id_entree = :id_entree and id_emplacement = :id_emplacement")
	 void deleteEntreeEmplacementById( @Param("id_entree") long idEntree,  @Param("id_emplacement") long id_emplacement );

Merci