Bonjour,

j’essaie de générer une fichier XMI/UML à partir d'un modèle EMF.

J'utilise pour ce faire les librairies d'org.eclipse.uml2.uml.

Mon problème est le suivant:
Quand j’essaie d'appliquer un stéréotype sur un EObject de mon modèle,
j'ai l'exception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Caused by: java.lang.IllegalArgumentException: stereotype "MonProfile::MonStereo" is already applied
	at org.eclipse.uml2.uml.internal.operations.ElementOperations.applyStereotype(ElementOperations.java:1504)
	at org.eclipse.uml2.uml.internal.impl.ElementImpl.applyStereotype(ElementImpl.java:504)
Les stereotypes sont automatiquement appliqués aux EOBjects lors de leur création. Ce n'est pas le comportement que je souhaite.
J'ai compris que c'est cette ligne de code qui implique cet automatisme:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
profile.createMetaclassReference(ownedType);
Mais quand je la commente et que j'ajoute la ligne de code suivante pour appliquer mon stereotype:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
targetComponent.applyStereotype((Stereotype) ownedStereotype);
j'ai le crash suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
Caused by: java.lang.IllegalArgumentException: org.eclipse.uml2.uml.internal.impl.ClassImpl@5b276c07 (name: Component, visibility: <unset>) (isLeaf: false, isAbstract: false, isFinalSpecialization: false) (isActive: false)
	at org.eclipse.uml2.uml.internal.operations.StereotypeOperations.createExtension(StereotypeOperations.java:364)
	at org.eclipse.uml2.uml.internal.impl.StereotypeImpl.createExtension(StereotypeImpl.java:270)
Si vous aviez une idée, je vous en remercie d'avance.

Bon week end.