[ http://jira.andromda.org/browse/HIB-174?page=comments#action_12523 ] 

Carlos Cuenca commented on HIB-174:
-----------------------------------

how about adding an ocl constrain for this?

> Crash if Entity associated to non-Entity
> ----------------------------------------
>
>          Key: HIB-174
>          URL: http://jira.andromda.org/browse/HIB-174
>      Project: Hibernate Cartridge
>         Type: Bug

>     Versions: 3.1
>  Environment: Using AndroMDA 3.2-RC1-SNAPSHOT
>     Reporter: Matthias Bohlen
>     Assignee: Carlos Cuenca
>      Fix For: 3.2-RC1

>
> An error in the input model causes the cartridge to crash:
> When an <<Entity>> has an association to another class with no stereotype 
> (user forgot to model the stereotype <<Entity>> there), the cartridge crashes 
> because it tries to evaluate an OCL condition in HibernateAssociationEnd and 
> assumes that "otherEnd" is also an instance of HibernateAssociationEnd (which 
> it is not because of the missing stereotype!).
> The full stack trace:
> ------- AndroMDA Exception Recording -------
> Version ........: 3.2-RC1-SNAPSHOT
> Error ..........: Error performing ModelProcessor.process with model(s) --> 
> 'file:SomeModel.xml'
> Build ..........: ${build.date}
> Build System ...: AndroMDA Core-3.2-RC1-SNAPSHOT
> Build JDK ......: ${java.vm.vendor}-${java.vm.version}
> Build Builder ..: AndroMDA Core
> Run System .....: Windows XP5.1
> Run JDK ........: Sun Microsystems Inc.1.4.2_05-b04
> Main Exception .: org.andromda.core.common.IntrospectorException: No readable 
> property named 'list', exists on object 
> 'org.andromda.metafacades.uml14.AssociationEndFacadeLogicImpl[finance]'
> Root Exception .: org.andromda.core.common.IntrospectorException: No readable 
> property named 'list', exists on object 
> 'org.andromda.metafacades.uml14.AssociationEndFacadeLogicImpl[finance]'
> org.andromda.core.common.IntrospectorException: No readable property named 
> 'list', exists on object 
> 'org.andromda.metafacades.uml14.AssociationEndFacadeLogicImpl[finance]'
>       at 
> org.andromda.core.common.Introspector.internalGetProperty(Introspector.java:490)
>       at 
> org.andromda.core.common.Introspector.getNestedProperty(Introspector.java:226)
>       at 
> org.andromda.core.common.Introspector.getNestedProperty(Introspector.java:241)
>       at 
> org.andromda.core.common.Introspector.getProperty(Introspector.java:182)
>       at 
> org.andromda.translation.ocl.validation.OCLIntrospector.invoke(OCLIntrospector.java:40)
>       at 
> org.andromda.cartridges.hibernate.metafacades.HibernateAssociationEndLogic.validateInvariants(HibernateAssociationEndLogic.java:1260)
>       at 
> org.andromda.core.metafacade.MetafacadeBase.validate(MetafacadeBase.java:106)
>       at 
> org.andromda.core.metafacade.MetafacadeFactory.validateAllMetafacades(MetafacadeFactory.java:258)
>       at 
> org.andromda.core.engine.ModelProcessor.validateModel(ModelProcessor.java:367)
>       at 
> org.andromda.core.engine.ModelProcessor.loadModelIfNecessary(ModelProcessor.java:324)
>       at 
> org.andromda.core.engine.ModelProcessor.loadIfNecessary(ModelProcessor.java:504)
>       at 
> org.andromda.core.engine.ModelProcessor.processModels(ModelProcessor.java:217)
>       at 
> org.andromda.core.engine.ModelProcessor.process(ModelProcessor.java:143)
>       at 
> org.andromda.core.engine.ModelProcessor.process(ModelProcessor.java:79)
>       at org.andromda.core.engine.Engine.run(Engine.java:82)
>       at org.andromda.core.AndroMDA.run(AndroMDA.java:197)
>       at org.andromda.maven.plugin.AndroMDAMojo.execute(AndroMDAMojo.java:83)
>       at 
> org.andromda.maven.plugin.AbstractAndroMDAMojo.execute(AbstractAndroMDAMojo.java:106)
>       at 
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:432)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:530)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:472)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:451)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:303)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:270)
>       at 
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:139)
>       at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:322)
>       at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:115)
>       at org.apache.maven.cli.MavenCli.main(MavenCli.java:249)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:324)
>       at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
>       at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
>       at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
>       at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

-- 
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



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642

Reply via email to