Bonjour, voici mon problème:

J'ai la structure suivante :
Une entité abstraite Véhicule :
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "vehicule_type", discriminatorType = DiscriminatorType.STRING)
@Table(name="vehicule")
public abstract class Vehicule {
 
	[...]
}
2 Entités qui héritent de la classe Véhicules :
L'entité Voiture :
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
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING)
@DiscriminatorValue("voiture")
public class Voiture extends Vehicule {
	@ManyToMany
	@JoinTable(
		name="societe_vehicule",
		joinColumns=@JoinColumn(name="vehicule_id", referencedColumnName="vehicule_id"),
		inverseJoinColumns=@JoinColumn(name="societe_id", referencedColumnName="societe_id")
	)
	private Collection<Societe> societes;
}
et l'entité Camion :
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
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING)
@DiscriminatorValue("camion")
public class Camion extends Vehicule {
	@ManyToMany
	@JoinTable(
		name="societe_vehicule",
		joinColumns=@JoinColumn(name="vehicule_id", referencedColumnName="vehicule_id"),
		inverseJoinColumns=@JoinColumn(name="societe_id", referencedColumnName="societe_id")
	)
	private Collection<Societe> societes;
}
puis 1 autre entité Société qui a 2 relations ManyToMany vers les 2 entités :
Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
@Entity
@Table(name="societe")
public class Societe {
 
	[...]
 
	@ManyToMany(mappedBy="societes")
	private Collection<Voiture> voitures;
 
	@ManyToMany(mappedBy="societes")
	private Collection<Camion> camions;
}

J'aimerais donc savoir comment faire pour avoir la liste des Voitures et la liste des Camions pour une société.
Parce que avec cette structure, peut importe que j'ajoute des Voitures ou des Camions, il me dit que je n'ai que des Voitures.
Par exemple, si j'ajoute 2 Voitures et 1 Camion, ça me retourne 3 Voitures et 0 Camion.

Merci d'avance pour votre aide.

PS: sachant que la structure de la BD est plus ou moins figée :
[Vehicule]<=>[Societe_Vehicule]<=>[Societe]