2009-06-15 7 views
0

Ich habe grails gerade gehen gegeben, folgte dem einfachsten Tutorial und das hat funktioniert, aber dann auf die nächste grundlegende verschoben, wo ich eine Klasse erstellen, die eine viel zu eins hat Beziehung zu einem anderen.Seltsame 'Unknown Property' Fehler in Grails

sagen wir haben eine Klasse Trip, die eine Feld Fluggesellschaft des Typs Airline hat. Die Klassen haben beide ein paar andere Felder, aber sie sind nur Primitive.

jetzt, wenn ich ein Trip-Objekt erstellen und das Airline-Feld auf eine neue Instanz von Airline setzen, wird dieser Code normal ausgeführt. aber wenn ich versuche, auszuführen (was ich tat, indem Sie die folgende in Grails-app/conf/Bootstrap.groovy setzen:

Trip t = new Trip (...) 
t.airline = new Airline(...) 
println t.airline 

es einen großen Fehler mit einer massiven Stack-Trace gibt

org.springframework.beans.factory.access.BootstrapException: Error executing bootstraps; nested exception is org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.NoSuchMethodException: Unknown property 'airline' 
    at org.codehaus.groovy.grails.web.context.GrailsContextLoader.createWebApplicationContext(GrailsContextLoader.java:74) 
    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199) 
    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45) 
    at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:548) 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:136) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1234) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:460) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.jetty.Server.doStart(Server.java:222) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    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.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:43) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120) 
    at org.codehaus.groovy.grails.web.container.JettyServer.startServer(JettyServer.groovy:159) 
    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$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at org.codehaus.groovy.grails.web.container.JettyServer.start(JettyServer.groovy:114) 
    at grails.web.container.EmbeddableServer$start.call(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:128) 
    at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy:145) 
    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$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at _GrailsRun_groovy$_run_closure5_closure11.doCall(_GrailsRun_groovy) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:274) 
    at groovy.lang.Closure$call.call(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at groovy.lang.Closure$call.call(Unknown Source) 
    at _GrailsSettings_groovy$_run_closure10.doCall(_GrailsSettings_groovy:274) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Script.invokeMethod(Script.java:87) 
    at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1119) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1023) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:154) 
    at _GrailsRun_groovy$_run_closure5.doCall(_GrailsRun_groovy:137) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Script.invokeMethod(Script.java:87) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:72) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at _GrailsRun_groovy.runInline(_GrailsRun_groovy:104) 
    at _GrailsRun_groovy.this$4$runInline(_GrailsRun_groovy) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:142) 
    at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:127) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:162) 
    at _GrailsRun_groovy$_run_closure1.doCall(_GrailsRun_groovy:58) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:142) 
    at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:127) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:292) 
    at sun.reflect.GeneratedMethodAccessor48.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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:142) 
    at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:127) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:124) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8_closure9.doCall(GantBinding.groovy:152) 
    at sun.reflect.GeneratedMethodAccessor47.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.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8_closure9.doCall(GantBinding.groovy) 
    at sun.reflect.GeneratedMethodAccessor46.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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:274) 
    at groovy.lang.Closure$call.call(Unknown Source) 
    at org.codehaus.gant.GantBinding.withTargetEvent(GantBinding.groovy:90) 
    at org.codehaus.gant.GantBinding.this$4$withTargetEvent(GantBinding.groovy) 
    at sun.reflect.GeneratedMethodAccessor40.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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:718) 
    at groovy.lang.GroovyObjectSupport.invokeMethod(GroovyObjectSupport.java:44) 
    at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1119) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1023) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:158) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8.doCall(GantBinding.groovy:152) 
    at sun.reflect.GeneratedMethodAccessor39.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.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8.doCall(GantBinding.groovy) 
    at sun.reflect.GeneratedMethodAccessor38.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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Script.invokeMethod(Script.java:87) 
    at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1119) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1023) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:142) 
    at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:127) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:146) 
    at RunApp$_run_closure1.doCall(RunApp.groovy:33) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:142) 
    at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:127) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:292) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.DelegatingMetaClass.invokeMethod(DelegatingMetaClass.java:142) 
    at org.codehaus.gant.GantMetaClass.invokeMethod(GantMetaClass.java:127) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:39) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.call(PogoMetaClassSite.java:54) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:124) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8_closure9.doCall(GantBinding.groovy:152) 
    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$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8_closure9.doCall(GantBinding.groovy) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:274) 
    at groovy.lang.Closure$call.call(Unknown Source) 
    at org.codehaus.gant.GantBinding.withTargetEvent(GantBinding.groovy:90) 
    at org.codehaus.gant.GantBinding.this$4$withTargetEvent(GantBinding.groovy) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1009) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:718) 
    at groovy.lang.GroovyObjectSupport.invokeMethod(GroovyObjectSupport.java:44) 
    at groovy.lang.MetaClassImpl.invokeMethodOnGroovyObject(MetaClassImpl.java:1119) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1023) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMetaClassSite.java:66) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:158) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8.doCall(GantBinding.groovy:152) 
    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$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at org.codehaus.gant.GantBinding$_initializeGantBinding_closure4_closure8.doCall(GantBinding.groovy) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:274) 
    at groovy.lang.Closure$call.call(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120) 
    at gant.Gant$_dispatch_closure4.doCall(Gant.groovy:324) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:292) 
    at groovy.lang.Closure$call$0.call(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:124) 
    at gant.Gant$_dispatch_closure6.doCall(Gant.groovy:334) 
    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$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:266) 
    at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:51) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at gant.Gant$_dispatch_closure6.doCall(Gant.groovy) 
    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:86) 
    at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:234) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:1061) 
    at groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:893) 
    at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:892) 
    at groovy.lang.Closure.call(Closure.java:279) 
    at groovy.lang.Closure.call(Closure.java:274) 
    at groovy.lang.Closure$call.call(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:43) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:116) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:120) 
    at gant.Gant.withBuildListeners(Gant.groovy:344) 
    at gant.Gant.this$2$withBuildListeners(Gant.groovy) 
    at gant.Gant$this$2$withBuildListeners.callCurrent(Unknown Source) 
    at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:47) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:142) 
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:150) 
    at gant.Gant.dispatch(Gant.groovy:334) 
    at gant.Gant.this$2$dispatch(G 
+0

Es gibt keine Primitive in Groovy/Grails. Alles ist ein Objekt (anders als Java). –

Antwort

1

Sieht aus. . wie Ihre Reiseklasse Unterkunft gibt es keine „Fluggesellschaft“ haben

Wenn ich die folgenden Klassen haben, funktioniert es gut:

// grails-app/domain/Trip.groovy 
class Trip { 
String name 

static belongsTo = [airline: Airline] 

String toString() { name } 
} 

// grails-app/domain/Airline.groovy 
class Airline { 
String name 

static hasMany = [trips: Trip] 

String toString() { name } 
} 

Dann öffnen „Grails Konsole“ und diesen Code ausführen:

Trip t = new Trip(name: "my trip") 

t.airline = new Airline(name: "Delta") 

assert "Delta" == t.airline.name 

Schauen Sie sich die One-to-many Grails-Dokumentation für weitere Informationen.