UML2 Metafacade mapping broken after recent patch to allow association to multiple UML implementation classes -------------------------------------------------------------------------------------------------------------
Key: CORE-148 URL: http://jira.andromda.org/browse/CORE-148 Project: AndroMDA Core Issue Type: Bug Affects Versions: 3.4-SNAPSHOT Reporter: Bob Fields Assignee: Chad Brandon Build 221 2010-10-07T16:48:41 Patch provided by Benjamin Lerman. Now a MetafacadeMapping can be associated to multiple UML implementation classes. This is useful in the case where a Metafacade is mapped to multiple UML implementation class like for instance ClassifierFacade with the UML Interface and UML Class. This allows to have consistent mappings even in the case of multiple inheritance. This breaks the UML2 migrated versions of some of the test model. To reproduce, migrate the jbpm test model to UML2, modify jbpm cartridge test configuration to point to the UML2 model version. The error is: Main Exception .: Failed to construct a meta facade of type 'null' with mappingObject of type --> 'class org.eclipse.uml2.uml.internal.impl.PackageImpl' Root Exception .: org.andromda.core.metafacade.MetafacadeMappingsException: No mapping class could be found for 'org.andromda.cartridges.jbpm.metafacades.JBpmNodeLogicImpl' org.andromda.core.metafacade.MetafacadeMappingsException: No mapping class could be found for 'org.andromda.cartridges.jbpm.metafacades.JBpmNodeLogicImpl' at org.andromda.core.metafacade.MetafacadeUtils.getInheritedMappingClassNames(MetafacadeUtils.java:269) at org.andromda.core.metafacade.MetafacadeMapping.getMappingClassNames(MetafacadeMapping.java:76) ... The following mappings appear in the old 1:1 metafacade mapping with the exact same configuration, but not in the new update: org.andromda.cartridges.jbpm.metafacades.JBpmNodeLogicImpl=org.eclipse.uml2.uml.internal.impl.StateImpl org.andromda.cartridges.jbpm.metafacades.JBpmStateLogicImpl=org.eclipse.uml2.uml.internal.impl.VertexImpl org.andromda.cartridges.jbpm.metafacades.JBpmActionLogicImpl=org.eclipse.uml2.uml.internal.impl.ActivityImpl org.andromda.cartridges.jbpm.metafacades.JBpmTransitionLogicImpl=org.eclipse.uml2.uml.internal.impl.TransitionImpl org.andromda.cartridges.jbpm.metafacades.JBpmEndStateLogicImpl=org.eclipse.uml2.uml.internal.impl.FinalStateImpl org.andromda.cartridges.jbpm.metafacades.JBpmHandlerLogicImpl=org.eclipse.uml2.uml.internal.impl.OperationImpl I checked in some model updates which duplicates the problem, but did not enable because it would cause the build to break. To reproduce: modify cartridges\andromda-jbpm\conf\test\andromda.xml to comment out the uml14 model and uncomment the emf-uml22 model configuration. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.andromda.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today. http://p.sf.net/sfu/beautyoftheweb