Hibernate筛选器未应用于Grails服务/作业

Hibernate筛选器未应用于Grails服务/作业,hibernate,grails,gorm,Hibernate,Grails,Gorm,我的域使用hibernate筛选器,如下所示: class UserMapping { // Senseless App Logic here static hibernateFilters = { typeFilter(condition: "type = 'IDENTIFIED'", default: true) flagFilter(condition: "flags = 'ACTIVE'", default: true) } }

我的域使用hibernate筛选器,如下所示:

class UserMapping {
    // Senseless App Logic here
    static hibernateFilters = {
        typeFilter(condition: "type = 'IDENTIFIED'", default: true)
        flagFilter(condition: "flags = 'ACTIVE'", default: true)
    }
}
当我在控制器中使用它们时,它们似乎可以很好地应用,但是当我使用相同的findBy时。。在我的服务或工作中,它们不适用。有什么建议吗

如果有什么不同,我会在mixin中调用findBy

这个问题似乎有关联,但并不完全是我想要的:
自动启用过滤器的唯一时间是在web请求期间-这是由于插件的
HibernateFilterFilters
在每个web请求之前应用所有启用的过滤器。但是没有全局自动过滤逻辑——这是不切实际的

相反,请使用中描述的方法之一,例如


在我的例子中,我发现我忘记了“default:true”标志:o

我们在BootStrap.groovy中还有代码,可以启用hibernate过滤器:

def init = { servletContext ->
    //Hibernate filters
    MyDomainObject.enableHibernateFilter('myFilter')
}

(我知道这个问题已经得到了回答,但我希望这能帮助其他正在寻找答案的人。)

Burt,你已经是冠军了。谢谢你已经回答了我的两个问题!在我的例子中,我发现我忘记了“default:true”标志:o
def init = { servletContext ->
    //Hibernate filters
    MyDomainObject.enableHibernateFilter('myFilter')
}