我正在使用Grails。我正在尝试使用来自一个来源的值作为搜索其他来源的方法。
def numbers=[];
//collection of Info maps
somemaps.each{
numbers.add(it.id);
}
//THIS IS THE LINE THAT GENERATES THE ERROR
def info=Info.findAll("from Info as i where i.site in (:xsites)",['xsites':numbers]);
但是我收到了这个错误
Subtype 'java.lang.Integer' of reloadable type myservices.Info is not reloadable:
如何从“信息”中删除“数字”的值,以便它们在继承链中不再具有该类型?
答案 0 :(得分:1)
好吧,我的第一个问题是,Info&之间是否有关系?现场。如果是这样,为什么不尝试实际的标识符。如,
def info=Info.findAll("from Info as i where i.site.id in :xsites, ['xsites':numbers]");
或者更糟糕的是,使用createCriteria
def info=Info.createCriteria().list{
site{
'in' ('id', numbers)
}
}