Grails groovy:将类(域)作为参数传递并动态调用静态方法

Grails groovy:将类(域)作为参数传递并动态调用静态方法,grails,inheritance,reflection,groovy,Grails,Inheritance,Reflection,Groovy,我有一个类的继承树 class Perfer{ String param String value } class PerferChp extends Prefer{ static belongsTo=[chp:Chp] } class PerferSec extends Prefer{ static belongsTo=[sec:Sec] } 当我尝试将域类作为参数传递时,我会尝试以下操作: Prefer find(GormStaticApi<P

我有一个类的继承树

class Perfer{

   String param
    String value
}

class PerferChp extends Prefer{
    static belongsTo=[chp:Chp]
}


class PerferSec extends Prefer{
 static belongsTo=[sec:Sec]

}
当我尝试将域类作为参数传递时,我会尝试以下操作:

   Prefer find(GormStaticApi<Prefer> preferenceFamily,String param){
            preferenceFamily.findByParam(param);

   }
首选查找(GormStaticApi preferenceFamily,字符串参数){
preferenceFamily.findByParam(param);
}

但是徒劳的

什么是
findParam
?您正在尝试在类
实例
上搜索吗?非;不findByParam(由Gorm生成的静态方法)==>updatedTry在实际类上使用findBy
首选
而不是实例。正如Alidad所说,findBy是一个静态方法,因此不能在实例中使用它。