Salut,
A partir du diagramme de classes suivant, j'ai généré les objets Java et cherche désormais à les lier à un SGBD via l'API Hibernate.
** Diagramme :
Un objet 'EmbeddedMetadata' contient donc deux 'Map', l'une issue du lien de composition avec un objet AudioMetadata ou VideoMetadata, et l'autre issue de l'héritage de l'objet 'Information'.
Le but recherché est d'adjoindre à des métadonnées d'un contenu multimédia d'autres métadonnées propres à l'utilisation de ces métadonnées dans l'application.
Sous Hibernate, j'ai choisi la stratégie de mapping par polymorphisme implicite, avec les mappings suivants :
A l'exécution, j'obtiens l'erreur, 'data' correspondant au nom des deux 'Map', l'une héritée, l'autre composée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
En outre, si je teste des métadonnées audio et que je supprime le mapping 'videometadata', l'exécution fonctionne, mais les métadonnées se retrouvent dupliquées dans les deux 'Map', et non pas réparties comme attendu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
Aussi, si, dans le mapping de 'embeddedmetadata', je supprime la 'Map' et que je supprime le mapping 'videometada', l'exécution se passe bien, et je constate que les métadonnées du '<any name='multimediaMetada' ...>' sont bien réparties, et non dupliquées (je n'obtiens ici que les métadonnées attendues).
Avez-vous une idée de ce qui ne va pas ici ?
Merci.

 

 
		
		 
        

 
			
			


 
   


 [Hibernate] Polymorphisme implicite : dysfonctionnement
 [Hibernate] Polymorphisme implicite : dysfonctionnement
				
 Répondre avec citation
  Répondre avec citation
Partager