Java Grails createCriteria缺少MethodException

Java Grails createCriteria缺少MethodException,java,hibernate,grails,Java,Hibernate,Grails,我们有一个代码块,可以选择一大堆用户id(200000+)。 然后,代码循环遍历每个节点,以获取更多信息 def crit = Subscription.createCriteria() def result = crit.get { projections { rowCount() } eq('userId', userId) eq('

我们有一个代码块,可以选择一大堆用户id(200000+)。 然后,代码循环遍历每个节点,以获取更多信息

        def crit = Subscription.createCriteria()
        def result = crit.get {
            projections {
                rowCount()
            }
            eq('userId', userId)
            eq('deptId', deptId)
            ge('endDate', new Date())
        }
我们只想知道是否存在“有效”的记录。 这个很好用。直到我们在阵列的更深处创下记录。Grails然后抛出以下异常:

2012-08-13 16:00:45,518 ERROR subscription.service.SubscriptionServiceImpl(?:?) - No signature of method: static com.me.subscription.model.Subscription.createCriteria() is applicable for argument types: () values: []
groovy.lang.MissingMethodException: No signature of method: static com.me.subscription.model.Subscription.createCriteria() is applicable for argument types: () values: []
为什么这样的循环对成千上万的记录来说是好的,然后这个异常会突然出现

通过IntelliJ中的调试器查看代码表明所有参数都是有效的。但当我运行表达式时:

def asd = Subscription.createCriteria()
缺少该方法。
这不是一个模拟的方法。这是在生产中运行的。我是否达到了某个顶级边界?

您正在循环并创建数千个标准?你有足够的内存吗?当然,这个方法使用了大量的内存。但我已经通过您的工具包运行了这段代码,看起来处理得还不错。此方法是重写的候选方法,但不知从何处丢失的方法是值得关注的。