【问题标题】:Default conditions on Hibernate filtersHibernate 过滤器的默认条件
【发布时间】:2010-04-01 09:21:41
【问题描述】:

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

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

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

<filter name="IsDeletedFilter" />

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

原因:java.lang.NullPointerException 在 org.hibernate.cfg.HbmBinder.parseFilter(HbmBinder.java:2957)

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

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

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

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

【问题讨论】:

    标签: java hibernate filter


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2012-10-15
      • 2012-05-03
      • 1970-01-01
      • 2022-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-25
      • 1970-01-01
      相关资源
      最近更新 更多