Grails
  1. Grails
  2. GRAILS-6235

Reloading webflow fails with 'MissingPropertyException' for 'log'

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 1.3 RC2
    • Fix Version/s: 1.4-M1
    • Component/s: WebFlow
    • Labels:
      None
    • Environment:
      64-bit win7, java 1.6_20 64-bit VM.

      Description

      If I edit a flow (a simple change is enough: remove/add a semicolon) I always end up with:

      2010-05-07 19:54:53,657 [http-8080-6] ERROR errors.GrailsExceptionResolver  - No such property: log for class: org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer
      groovy.lang.MissingPropertyException: No such property: log for class: org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer
      	at ios.local.CampaignDetailsWizardController$_closure5_closure20.doCall(ios.local.CampaignDetailsWizardController:261)
      	at ios.local.CampaignDetailsWizardController$_closure5_closure20.doCall(ios.local.CampaignDetailsWizardController)
      	at ios.local.CampaignDetailsWizardController$_closure5.doCall(ios.local.CampaignDetailsWizardController:260)
      	at ios.local.CampaignDetailsWizardController$_closure5.doCall(ios.local.CampaignDetailsWizardController)
      	at java.lang.Thread.run(Thread.java:619)
      

      The above is what appears on the console. For completeness, here is the excerpt from stacktrace.log:

      2010-05-07 19:54:53,650 [http-8080-6] ERROR StackTrace  - Sanitizing stacktrace:
      groovy.lang.MissingPropertyException: No such property: log for class: org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
      	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
      	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
      	at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77)
      	at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:107)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:204)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer.propertyMissing(FlowBuilder.groovy:495)
      	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:597)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      	at groovy.lang.MetaClassImpl.invokeMissingProperty(MetaClassImpl.java:754)
      	at groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:1612)
      	at groovy.lang.ExpandoMetaClass.getProperty(ExpandoMetaClass.java:1095)
      	at groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:3303)
      	at groovy.lang.ExpandoMetaClass.getProperty(ExpandoMetaClass.java:1107)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer.getProperty(FlowBuilder.groovy)
      	at org.codehaus.groovy.runtime.InvokerHelper.getProperty(InvokerHelper.java:156)
      	at groovy.lang.Closure.getPropertyTryThese(Closure.java:191)
      	at groovy.lang.Closure.getPropertyDelegateFirst(Closure.java:181)
      	at groovy.lang.Closure.getProperty(Closure.java:166)
      	at org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:47)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty(AbstractCallSite.java:241)
      	at ios.local.CampaignDetailsWizardController$_closure5_closure20.doCall(ios.local.CampaignDetailsWizardController:261)
      	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:597)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:225)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
      	at ios.local.CampaignDetailsWizardController$_closure5_closure20.doCall(ios.local.CampaignDetailsWizardController)
      	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:597)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      	at sun.reflect.GeneratedMethodAccessor607.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
      	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:129)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder$_invokeMethod_closure1.doCall(FlowBuilder.groovy:148)
      	at sun.reflect.GeneratedMethodAccessor604.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod.invoke(ClosureMetaMethod.java:80)
      	at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1065)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886)
      	at groovy.lang.Closure.call(Closure.java:276)
      	at groovy.lang.Closure.call(Closure.java:271)
      	at sun.reflect.GeneratedMethodAccessor608.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      	at sun.reflect.GeneratedMethodAccessor607.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:229)
      	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
      	at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:54)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:129)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder$_invokeMethod_closure1.doCall(FlowBuilder.groovy:148)
      	at sun.reflect.GeneratedMethodAccessor604.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      	at org.codehaus.groovy.runtime.metaclass.ClosureMetaMethod.invoke(ClosureMetaMethod.java:80)
      	at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1065)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:121)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder.invokeMethod(FlowBuilder.groovy:160)
      	at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1123)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1040)
      	at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1067)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
      	at ios.local.CampaignDetailsWizardController$_closure5.doCall(ios.local.CampaignDetailsWizardController:260)
      	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:597)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:225)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:143)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:151)
      	at ios.local.CampaignDetailsWizardController$_closure5.doCall(ios.local.CampaignDetailsWizardController)
      	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:597)
      	at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88)
      	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1058)
      	at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:1067)
      	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886)
      	at groovy.lang.Closure.call(Closure.java:276)
      	at groovy.lang.Closure.call(Closure.java:271)
      	at groovy.lang.Closure$call.call(Unknown Source)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
      	at groovy.lang.Closure$call.call(Unknown Source)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder.invokeMethod(FlowBuilder.groovy:122)
      	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:597)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSite.invoke(PogoMetaMethodSite.java:225)
      	at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51)
      	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:155)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder.flow(FlowBuilder.groovy:359)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder.this$3$flow(FlowBuilder.groovy)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder$this$3$flow.callCurrent(Unknown Source)
      	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:44)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder$this$3$flow.callCurrent(Unknown Source)
      	at org.codehaus.groovy.grails.webflow.engine.builder.FlowBuilder.buildStates(FlowBuilder.groovy:399)
      	at org.springframework.webflow.engine.builder.FlowAssembler.directAssembly(FlowAssembler.java:106)
      	at org.springframework.webflow.engine.builder.FlowAssembler.assembleFlow(FlowAssembler.java:91)
      	at org.springframework.webflow.engine.builder.DefaultFlowHolder.assembleFlow(DefaultFlowHolder.java:109)
      	at org.springframework.webflow.engine.builder.DefaultFlowHolder.getFlowDefinition(DefaultFlowHolder.java:84)
      	at org.springframework.webflow.definition.registry.FlowDefinitionRegistryImpl.getFlowDefinition(FlowDefinitionRegistryImpl.java:61)
      	at org.springframework.webflow.execution.repository.snapshot.SerializedFlowExecutionSnapshotFactory.restoreExecution(SerializedFlowExecutionSnapshotFactory.java:77)
      	at org.springframework.webflow.execution.repository.snapshot.AbstractSnapshottingFlowExecutionRepository.restoreFlowExecution(AbstractSnapshottingFlowExecutionRepository.java:89)
      	at org.springframework.webflow.execution.repository.impl.DefaultFlowExecutionRepository.getFlowExecution(DefaultFlowExecutionRepository.java:112)
      	at org.codehaus.groovy.grails.webflow.execution.GrailsFlowExecutorImpl.resumeExecution(GrailsFlowExecutorImpl.java:66)
      	at org.springframework.webflow.mvc.servlet.FlowHandlerAdapter.handle(FlowHandlerAdapter.java:183)
      	at org.codehaus.groovy.grails.webflow.mvc.servlet.GrailsFlowHandlerAdapter.handle(GrailsFlowHandlerAdapter.java:55)
      	at org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet.doDispatch(GrailsDispatcherServlet.java:256)
      	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
      	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
      	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:563)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:70)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
      	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
      	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
      	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
      	at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(WebUtils.java:278)
      	at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(WebUtils.java:254)
      	at org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingInfo(WebUtils.java:247)
      	at org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.doFilterInternal(UrlMappingsFilter.java:187)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.obtainContent(GrailsPageFilter.java:245)
      	at org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.doFilter(GrailsPageFilter.java:136)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.codehaus.groovy.grails.web.servlet.filter.GrailsReloadServletFilter.doFilterInternal(GrailsReloadServletFilter.java:101)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequestFilter.doFilterInternal(GrailsWebRequestFilter.java:67)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.codehaus.groovy.grails.web.filters.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:63)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
      	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
      	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:237)
      	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:167)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
      	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
      	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
      	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
      	at java.lang.Thread.run(Thread.java:619)
      2010-05-07 19:54:53,656 [http-8080-6] ERROR StackTrace  - Sanitizing stacktrace:
      groovy.lang.MissingPropertyException: No such property: log for class: org.codehaus.groovy.grails.webflow.engine.builder.FlowInfoCapturer
      	at ios.local.CampaignDetailsWizardController$_closure5_closure20.doCall(ios.local.CampaignDetailsWizardController:261)
      	at ios.local.CampaignDetailsWizardController$_closure5_closure20.doCall(ios.local.CampaignDetailsWizardController)
      	at ios.local.CampaignDetailsWizardController$_closure5.doCall(ios.local.CampaignDetailsWizardController:260)
      	at ios.local.CampaignDetailsWizardController$_closure5.doCall(ios.local.CampaignDetailsWizardController)
      	at java.lang.Thread.run(Thread.java:619)
      

      Maybe the new version of the generated class does not get dependencies injected properly?

      The only fix I can see is to restart the server. A bit painful. The flow works very well after restart/before any change...

        Activity

        Hide
        alpheratz added a comment -

        Actually, I am wondering if this isn't something arising from the cleanup of the 'old' version of the class?

        The offending bit of code is an end state:

            cancel {
              log.debug "wizardFlow cancel"
        
              // compensate for http://jira.codehaus.org/browse/GRAILS-4917
              redirect(controller: 'campaignDetailsWizard', action: 'dieDieDie')
            }
        
        Show
        alpheratz added a comment - Actually, I am wondering if this isn't something arising from the cleanup of the 'old' version of the class? The offending bit of code is an end state: cancel { log.debug "wizardFlow cancel" // compensate for http://jira.codehaus.org/browse/GRAILS-4917 redirect(controller: 'campaignDetailsWizard', action: 'dieDieDie') }
        Hide
        Graeme Rocher added a comment -

        'log' is now injected at the AST level so this will work

        Show
        Graeme Rocher added a comment - 'log' is now injected at the AST level so this will work

          People

          • Assignee:
            Unassigned
            Reporter:
            alpheratz
          • Votes:
            3 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development