java - Hibernate 过滤器的默认条件

标签 java hibernate filter

我正在定义一个 Hibernate 过滤器,它指定默认条件,如下所示:

<filter-def name="IsDeletedFilter" condition="IsDeleted = 'false'" />

在我的实体映射中,我像这样关联过滤器:

<filter name="IsDeletedFilter" />

根据documentation ,以这种方式使用时,过滤器应应用默认条件。然而,当我尝试这样做时,Hibernate 在尝试解析实体映射时会抛出 NullPointerException。堆栈跟踪显示了这一点:

Caused by: java.lang.NullPointerException at org.hibernate.cfg.HbmBinder.parseFilter(HbmBinder.java:2957)

但是,如果我直接在实体映射中指定条件,如下所示:

<filter name="IsDeletedFilter2" condition="IsDeleted = 'false'"/>

它工作正常并且数据被正确过滤。

使用默认条件的正确方法是什么?

最佳答案

这是一个错误。可能的解决方法是在另一个文件中定义过滤器并将其包含在内。 http://opensource.atlassian.com/projects/hibernate/browse/HHH-2488

关于java - Hibernate 过滤器的默认条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2559348/

相关文章:

hibernate - 如何配置 Spring Boot 应用程序以使用 aspectj 事务?

javascript - 过滤多层对象的嵌套数组并返回数组中匹配的对象

c++ - 着色器上带有卷积矩阵的高斯模糊

javascript - AngularJs,过滤不区分大小写

java - 嵌套枚举是否应该声明为静态?

java - 在Java中旋转正方形的角上保留一个正方形

java - 从位于异步任务 doInBackGround 中的回调返回一个值

java - 如何在Eclipse中调试外部插件?

java - 尝试解析 LocalDateTime 时出现异常

java - 使用 EclipseLink 从实体生成表不会执行任何操作