Hello,
I am currently trying to use the version 3.0M2 and am having trouble merging to this version (I was working with the M1 version before.
My cartridge uses four metafacades extensions. I extend AttributeFacade, AssociationFacade, AssociationEndFacade and ClassifierFacade. I can now compile my cartridge correctly but I am having problem generating the code... I don't receive any errors but nothing is generated. Furthermore, they seem to be looking for such outlets as facade-logics, facade-logic-impls, etc. which I don't define in my andromda-cartridge.xml... Where is Andromda finding these outlets and why doesn't it call my outlets.
Here is the output I get:
INFO [AndroMDA]
INFO [AndroMDA] A n d r o M D A - 3.0M2
INFO [AndroMDA]
INFO [AndroMDA] found translation-library --> 'query'
INFO [AndroMDA] found translation-library --> 'validation'
INFO [AndroMDA] found cartridge --> 'meta'
INFO [AndroMDA] found cartridge --> 'webapp'
INFO [AndroMDA] Input model --> 'jar:file:C:\apps\Jetsgo\apps\flightinfo/doc/flightinfo.zuml!/flightinfo.xmi'
INFO [AndroMDA] found metafacades --> 'meta'
INFO [AndroMDA] found shared metafacades --> 'uml-1.4' - adding to 'default' namespace
INFO [AndroMDA] found metafacades --> 'webapp'
WARN [Namespaces] WARNING! Namespaces 'default' and 'meta' have no property 'facade-logics' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
WARN [Namespaces] WARNING! Namespaces 'default' and 'meta' have no property 'facade-logic-impls' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
WARN [Namespaces] WARNING! Namespaces 'default' and 'meta' have no property 'facades' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
WARN [Namespaces] WARNING! Namespaces 'default' and 'meta' have no property 'facades-to-impls' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
WARN [Namespaces] WARNING! Namespaces 'default' and 'webapp' have no property 'hibernate-conf' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
WARN [Namespaces] WARNING! Namespaces 'default' and 'webapp' have no property 'jibx-facade-serialization' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
WARN [Namespaces] WARNING! Namespaces 'default' and 'webapp' have no property 'jibx-conf-binding' defined --> please define this property in AT LEAST ONE of these two namespaces. If you want to 'ignore' this message, add the property to the namespace with ignore set to 'true'
INFO [AndroMDA] completed model processing, TIME --> 14.453[s]
It seems to find my cartridge webapp but doesn't seem to call my outlets...instead it calls templates that are not defined.
Here is my ant task:
<namespace name="webapp" ignore="false">
<property name="entity" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="facade" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="facade-base" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="exception-notfound" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="entity-localization" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="exception-unicityviolation" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-tiles-delete" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-tiles-form" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-tiles-list" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-action-abstract" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-action-delete" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-action-form" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-action-list" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="struts-action-save" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="xsd" value="${andromda.gen.src.dir}" ignore="false"/>
<property name="localizableClassFullyQualifiedName" value="com.agencebraque.localization.entities.Localizable"/>
<property name="localizationFullyClassQualifiedName" value="com.agencebraque.localization.entities.Localization"/>
<property name="localizationContextClassQualifiedName" value="com.agencebraque.localization.entities.LocalizationContext"/>
<property name="instanceNotLocalizedExceptionClassQualifiedName" value="com.agencebraque.localization.facades.LocalizationException"/>
<property name="noLocalizablePropertyExceptionClassFullyQualifiedName" value="com.agencebraque.localization.facades.NoLocalizablePropertyException"/>
<property name="noLocalizableReferenceForClassExceptionClassFullyQualifiedName" value="com.agencebraque.localization.facades.NoLocalizableReferenceForClassException"/>
<property name="localizationUtilsClassFullyQualifiedName" value="com.agencebraque.localization.util.LocalizationUtils"/>
<property name="abstractFacadeClassFullyQualifiedName" value="com.agencebraque.util.facades.AbstractBraqueFacade"/>
<property name="systemExceptioneClassFullyQualifiedName" value="com.agencebraque.util.facades.BraqueSystemException"/>
<property name="abstractActionClassFullyQualifiedName" value="com.agencebraque.util.struts.AbstractBraqueAction"/>
<property name="abstractLocalizationTestCaseClassFullyQualifiedName" value="com.agencebraque.test.AbstractLocalizationTestCase"/>
<property name="abstractTestCaseClassFullyQualifiedName" value="com.agencebraque.test.AbstractTestCase"/>
<property name="namespacePrefixURI" value="http://www.agencebraque.com"/>
<property name="globalStringPackage" value="com.agencebraque.global"/>
</namespace>
And here is my andromda-cartridge.xml:
<cartridge name="webapp">
<templateEngine>
<macrolibrary name="templates/macros/global.vsl"/>
<macrolibrary name="templates/macros/class.vsl"/>
<macrolibrary name="templates/macros/localization.vsl"/>
<macrolibrary name="templates/macros/association.vsl"/>
<macrolibrary name="templates/macros/tiles.vsl"/>
<macrolibrary name="templates/macros/struts.vsl"/>
<macrolibrary name="templates/macros/testAttribute.vsl"/>
<macrolibrary name="templates/macros/testAssociationEnd.vsl"/>
</templateEngine><templateObject name="jibxhelper" className="org.andromda.cartridges.webapp.util.JiBXHelper"/>
<templateObject name="stringUtils" className="org.andromda.cartridges.webapp.util.WebAppStringUtils"/>
<templateObject name="constants" className="org.andromda.cartridges.webapp.util.WebAppConstants"/>
<templateObject name="packageHelper" className="org.andromda.cartridges.webapp.util.WebAppPackageHelper"/>
<templateObject name="classifierhelper" className="org.andromda.cartridges.webapp.util.ClassifierHelper"/>
<template
path="templates/conf/HibernateXmlConf.vsl"
outputPattern="conf/hibernate.cfg.xml"
outlet="hibernate-conf"
overwrite="true">
<modelElements variable="mainpackage">
<modelElement stereotype="ApplicationModel"/>
</modelElements>
</template> <template
path="templates/entity/Entity.vsl"
outputPattern="java/{0}/entities/{1}.java"
outlet="entity"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/facades/Facade.vsl"
outputPattern="java/{0}/facades/{1}PersistenceFacade.java"
outlet="facade"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/facades/FacadeBase.vsl"
outputPattern="java/{0}/facades/{1}PersistenceFacadeBase.java"
outlet="facade-base"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/exceptions/NotFoundException.vsl"
outputPattern="java/{0}/facades/{1}NotFoundException.java"
outlet="exception-notfound"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/entity/EntityLocalization.vsl"
outputPattern="java/{0}/entities/{1}Localization.java"
outlet="entity-localization"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/exceptions/AttributeUnicityViolationException.vsl"
outputPattern="${generatedFilePath}"
outlet="exception-unicityviolation"
overwrite="true">
<modelElements variable="attribute">
<modelElement stereotype="Unique"/>
</modelElements>
</template>
<!-- Struts Tiles stuff -->
<template
path="templates/struts/tiles/delete.vsl"
outputPattern="struts/tiles/{0}/{1}/delete.jsp"
outlet="struts-tiles-delete"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/struts/tiles/form.vsl"
outputPattern="struts/tiles/{0}/{1}/form.jsp"
outlet="struts-tiles-form"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/struts/tiles/list.vsl"
outputPattern="struts/tiles/{0}/{1}/list.jsp"
outlet="struts-tiles-list"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <!-- Struts stuff -->
<template
path="templates/struts/AbstractAction.vsl"
outputPattern="java/{0}/struts/{1}AbstractAction.java"
outlet="struts-action-abstract"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/struts/DeleteAction.vsl"
outputPattern="java/{0}/struts/{1}DeleteAction.java"
outlet="struts-action-delete"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/struts/FormAction.vsl"
outputPattern="java/{0}/struts/{1}FormAction.java"
outlet="struts-action-form"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/struts/ListAction.vsl"
outputPattern="java/{0}/struts/{1}ListAction.java"
outlet="struts-action-list"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/struts/SaveAction.vsl"
outputPattern="java/{0}/struts/{1}SaveAction.java"
outlet="struts-action-save"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <!-- JiBX stuff -->
<template
path="templates/XMLSerializationFacade.vsl"
outputPattern="java/{0}/facades/{1}XMLSerializationFacade.java"
outlet="jibx-facade-serialization"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Snapshot"/>
</modelElements>
</template> <template
path="templates/conf/JiBXMapping.vsl"
outputPattern="conf/jibx/binding.xml"
outlet="jibx-conf-binding"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Snapshot"/>
</modelElements>
</template> <template
path="templates/snapshot/Snapshot.vsl"
outputPattern="java/{0}/entities/{1}.java"
outlet="entity"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Snapshot"/>
</modelElements>
</template> <!-- JUnit Tests stuff -->
<template
path="templates/test/LocalizedHibernateAbstractUnitTest.vsl"
outputPattern="javaTest/{0}/entities/Abstract{1}TestCase.java"
outlet="entity"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <template
path="templates/test/LocalizedHibernateUnitTest.vsl"
outputPattern="javaTest/{0}/entities/{1}TestCase.java"
outlet="entity"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Entity"/>
</modelElements>
</template> <!-- XML stuff -->
<template
path="templates/xml/XSD.vsl"
outputPattern="xml/xsd/{1}.xsd"
outlet="xsd"
overwrite="true">
<modelElements variable="class">
<modelElement stereotype="Snapshot"/>
</modelElements>
</template>
</cartridge>If you have an idea, please let me know....I've tried a few things and can't resolve this.
Thank you,
Fran�ois
------------------------------------------------------- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285 _______________________________________________ Andromda-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/andromda-user
