'getControllerCalls' IllegalArgumentException 'metaObject' can not be null

Description

A more informative message would be beneficial for the user.

The problem was that I had not defined the defer event correctly, I had
not associated the event with controller method in the Call Event
Specification dialog (State Spec;detail tab;edit deferable event)

On Wed, 2004-11-03 at 22:18, Martin West wrote:
> Any ideas what might cause this?
>
> I have three usecases/activity diagrams each with controller
> class/stereotyped and each in its own package.
>
> Caused by: org.andromda.core.cartridge.CartridgeException: Error
> performing Cartridge.processWithTemplate with template
> 'templates/StrutsAction.vsl', template context
> '{action=org.andromda.metafacades.uml14.ModelElementFacadeLogicImpl,
> serverValidation=true, welcomeFileName=index.jsp, onlineHelp=true,
> clientValidation=true,
> bpmUtils=org.andromda.cartridges.bpm4struts.Bpm4StrutsUtils@1b67d6a,
> str=org.andromda.core.common.StringUtilsHelper@1e3cc77, xhtml=false,
> maxBreadCrumbs=5, hints=true,
> warningMessagesKey=org.andromda.bpm4struts.warningmessages,
> security=false, dummyData=true, securityRealm=other,
> successMessagesKey=org.andromda.bpm4struts.successmessages}' and
> cartridge 'bpm4struts'
> at
> org.andromda.core.cartridge.Cartridge.processWithTemplate(Cartridge.java:455)
> at
> org.andromda.core.cartridge.Cartridge.processTemplateWithModelElements(Cartridge.java:301)
> ... 40 more
> Caused by: org.apache.velocity.exception.MethodInvocationException:
> Invocation of method 'getControllerCalls' in class
> org.andromda.cartridges.bpm4struts.metafacades.StrutsActionStateLogicImpl threw exception class java.lang.IllegalArgumentException : methodName: MetafacadeFactory.internalCreateMetafacade - 'metaObject' can not be null
>
> from andromda-bpm4struts.log
>
> 2004-11-03 21:59:44,819 - performing
> VelocityTemplateEngine.processTemplate with templateFile
> 'templates/StrutsAction.vsl' and templateObjects
> '{action=org.andromda.metafacades.uml14.ModelElementFacadeLogicImpl,
> serverValidation=true, welcomeFileName=index.jsp, onlineHelp=true,
> clientValidation=true,
> bpmUtils=org.andromda.cartridges.bpm4struts.Bpm4StrutsUtils@1b67d6a,
> str=org.andromda.core.common.StringUtilsHelper@1e3cc77, xhtml=false,
> maxBreadCrumbs=5, hints=true,
> warningMessagesKey=org.andromda.bpm4struts.warningmessages,
> security=false, dummyData=true, securityRealm=other,
> successMessagesKey=org.andromda.bpm4struts.successmessages}'
> 2004-11-03 21:59:44,844 - Velocimacro : added new VM : #saveMessages(
> transition indent ) : source = templates/StrutsAction.vsl
> 2004-11-03 21:59:45,117 - ResourceManager : found
> templates/StrutsAction.vsl with loader
> org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
> 2004-11-03 21:59:45,121 - Velocimacro : VM addition rejected :
> processTransition : inline not allowed to replace existing VM
> 2004-11-03 21:59:45,121 - ResourceManager : found
> templates/StrutsAction.vm with loader
> org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader
> 2004-11-03 21:59:45,573 - Method getControllerCalls threw exception for
> reference $actionState in template templates/StrutsAction.vsl at
> [61,30]

Environment

None

Status

Assignee

MichaelM

Reporter

MartinM

Labels

None

Fix versions

Affects versions

3.0-M3

Priority

Major
Configure